[PHP] Aantal regels tellen uit een mysql resultaat

Pagina: 1
Acties:
  • 381 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Heren,

ik heb iets in elkaar gebrouwen met php+mysql. Simpel scriptje welk databaseresultaten ophaalt in een lus en deze weergeeft op de html pagina.

PHP:
1
2
3
4
5
6
7
8
9
  $query = mysql_query("SELECT * FROM problemen") or die (mysql_error());
  while($resultaat = mysql_fetch_array($query)) {
    $lengte = $aantal = mysql_num_rows($query);
    echo $lengte;
    echo "<table border='0' cellpadding='0' cellspacing='0'>
     <tr>
      <td width='10%'><b>Probleem ID:</b></td>
      <td width='90%'>".$resultaat['id']."</td>
     </tr>


Het probleem is nu echter dat ik wil tellen hoeveel regels de tekst uit $resultaat['id'] bijv is.
Ik dacht het op te kunnen lossen met count echter zonder succes, het blijft 1 getal (logisch bij nader inzien aangezien hij arrays count).
Nu zit ik dus met het punt, hoe verder? zit gewoon vast met dit, het gaat dus puur om het tellen van het aantal regels uit $resultaat['id'] bijvoorbeeld, deze is altijd 1 regel natuurlijk.

Acties:
  • 0 Henk 'm!

Verwijderd

zoek hoeveel keer \n of <br> voorkomt in die string

Acties:
  • 0 Henk 'm!

  • reddog33hummer
  • Registratie: Oktober 2001
  • Laatst online: 03-08 23:13

reddog33hummer

Dat schept mogelijkheden

Als je alleen het getal wil hebben kan je gewoon een count() in je sql query doen.

$query = mysql_query("SELECT count(), * FROM problemen") or die (mysql_error());
...
echo $resultaat['count()'];
...

Of als je het in php wil doen

$counter = 0;
$query = mysql_query("SELECT * FROM problemen") or die (mysql_error());
while($resultaat = mysql_fetch_array($query)){
$counter++;
echo "<table border='0' cellpadding='0' cellspacing='0'>
<tr>
<td width='10%'><b>Probleem ID:</b></td>
<td width='90%'>".$resultaat['id']."</td>
</tr>
}
echo $counter;

[ Voor 96% gewijzigd door reddog33hummer op 12-04-2005 18:52 ]

Backup not found (R)etry (A)bort (P)anic<br\>AMD 3400+ 64, 2 GB DDR, 1,5 TB Raid5


Acties:
  • 0 Henk 'm!

  • MTWZZ
  • Registratie: Mei 2000
  • Laatst online: 13-08-2021

MTWZZ

One life, live it!

Het ligt eraan hoe nieuwe regels worden aangegeven in dat veld.
Als het HTML is kun je kijken naar hoeveel keer <br /> voorkomt, anders zou je kunnen kijken hoe vaak \n of \r\n voorkomt.
Kijk evt ook even naar explode
edit:
Spuit 11 :9

[ Voor 7% gewijzigd door MTWZZ op 12-04-2005 18:53 . Reden: hbb was eerder ]

Nu met Land Rover Series 3 en Defender 90


Acties:
  • 0 Henk 'm!

  • Huppie
  • Registratie: Mei 2003
  • Laatst online: 02-09 09:59
Als toevoeging op de reactie van hbb :)
PHP:
1
2
3
<?php
$aantal_regels = count( explode( "\n", $resultaat['id'] ) );
?>


edit:
ik vond een betere :D


PHP:
1
$aantal_regels = substr_count( $resultaat['id'], "\n" );


edit:
grrrr... :P

[ Voor 68% gewijzigd door Huppie op 12-04-2005 18:57 ]

Proud member of TCF - D2OL is zooooo 2005


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Huppie schreef op dinsdag 12 april 2005 @ 18:53:
Als toevoeging op de reactie van hbb :)
PHP:
1
2
3
<?php
$aantal_regels = count( explode( "\n", $resultaat['id'] ) );
?>
Kan veel makkelijker. ;)
PHP:
1
$aantal_regels = substr_count($resultaat['id'], "\n") + 1;

Let goed op die +1... Het aantal regels is natuurlijk één regel meer dan het aantal enters. ;)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

Verwijderd

$aantal = mysql_num_rows(mysql_query("SELECT * FROM blab WHERE blac=blad"));

dit geeft het aantal rows in blab waar blac=blad

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Verwijderd schreef op dinsdag 12 april 2005 @ 18:59:
$aantal = mysql_num_rows(mysql_query("SELECT * FROM blab WHERE blac=blad"));

dit geeft het aantal rows in blab waar blac=blad
Ja, maar dat is dan ook niet wat TS vroeg. ;)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

Verwijderd

-NMe- schreef op dinsdag 12 april 2005 @ 19:00:
[...]

Ja, maar dat is dan ook niet wat TS vroeg. ;)
het gaat dus puur om het tellen van het aantal regels uit $resultaat['id'] bijvoorbeeld...
$resultaat = mysql_fetch_array($query)
$query = mysql_query("SELECT * FROM problemen") or die (mysql_error())

dus dan wil hij toch $aantal = mysql_num_rows(mysql_query("SELECT * FROM problemen"));

weten?

[ Voor 6% gewijzigd door Verwijderd op 12-04-2005 19:04 ]


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Verwijderd schreef op dinsdag 12 april 2005 @ 19:04:
$resultaat = mysql_fetch_array($query)
$query = mysql_query("SELECT * FROM problemen") or die (mysql_error())

dus dan wil hij toch $aantal = mysql_num_rows(mysql_query("SELECT * FROM problemen"));

weten?
Als dat zo is, dan haal ik dat in ieder geval niet uit de topicstart. :P

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Huppie schreef op dinsdag 12 april 2005 @ 18:53:
Als toevoeging op de reactie van hbb :)
PHP:
1
2
3
<?php
$aantal_regels = count( explode( "\n", $resultaat['id'] ) );
?>


edit:
ik vond een betere :D


PHP:
1
$aantal_regels = substr_count( $resultaat['id'], "\n" );


edit:
grrrr... :P
perfect werkt super!
rest ook bedankt zag door de bomen t bos niemeer.

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Verwijderd schreef op dinsdag 12 april 2005 @ 19:13:
perfect werkt super!
rest ook bedankt zag door de bomen t bos niemeer.
Heb je mijn post daaronder ook gelezen? :P

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

  • Huppie
  • Registratie: Mei 2003
  • Laatst online: 02-09 09:59
-NMe- schreef op dinsdag 12 april 2005 @ 19:17:
[...]

Heb je mijn post daaronder ook gelezen? :P
Denk ut wel hoor ;) Jij wist 'm uit je hoofd, ik moest 'm eerst opzoeken :)

Aan jou de credit dan maar :P

Proud member of TCF - D2OL is zooooo 2005


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Huppie schreef op dinsdag 12 april 2005 @ 19:21:
Denk ut wel hoor ;) Jij wist 'm uit je hoofd, ik moest 'm eerst opzoeken :)

Aan jou de credit dan maar :P
Ik doelde meer op die +1. ;) Overigens kende ik die functie ook niet uit het hoofd, heb hem zelfs nooit hoeven gebruiken. Maar ik vind alles meestal vrij snel op php.net. :P

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1