login  Naam:   Wachtwoord: 
Registreer je!
 Forum

optellen

Offline bwfighter - 03/04/2006 23:06
Avatar van bwfighterHTML interesse Hoe kan ik in mysql het aantal leden zien. bvb dat er 5 leden zijn ingeschreven

9 antwoorden

Gesponsorde links
Offline Stijn - 03/04/2006 23:12
Avatar van Stijn PHP expert mss met PHP.net: mysql_num_rows...:p
Offline Thomas - 04/04/2006 00:26
Avatar van Thomas Moderator Als je het goed wilt doen gebruik je COUNT, niet SELECT * en dan num_rows. Je hoeft alleen maar het aantal te weten, dan ga je niet alle rijen ophalen...
Offline Nrzonline - 04/04/2006 09:36
Avatar van Nrzonline PHP ver gevorderde
  1. <?PHP
  2. $count_gebruikers_sql = "SELECT count(*) FROM gebruikers";
  3. $count_gebruikers_qry = mysql_query($count_gebruikers_sql) or die(mysql_error());
  4. echo mysql_num_rows($count_gebruikers_qry);
  5. ?>


zo doe ik het meestal, maar is niet goed volgens FangorN =)
(werkt wel, maar kan sneller)
Offline Simon - 04/04/2006 10:03
Avatar van Simon PHP expert LOL Nrzonline, je doet een count, en dan ga je num_rows gebruiken 

  1. <?PHP
  2. $count_gebruikers_sql = "SELECT count(*) FROM gebruikers";
  3. $count_gebruikers_qry = mysql_query($count_gebruikers_sql) or die(mysql_error());
  4. echo mysql_result($count_gebruikers_qry,0);
  5. ?>
Offline Stijn - 04/04/2006 10:44
Avatar van Stijn PHP expert
Citaat:
$count_gebruikers_sql = "SELECT count(*) FROM gebruikers";
$count_gebruikers_qry = mysql_query($count_gebruikers_sql) or die(mysql_error());

zo'n rommel haat ik nu sé  je maakt een variable aan met inhoud. Je kan ook gewoon je inhoud in de functie zetten hé. Ze zitten dan te zagen over serverload maar als je 1000den queries zo doet kan ik het wel gaan geloven...
Offline Rens - 04/04/2006 14:03
Avatar van Rens Gouden medaille

Crew algemeen
En als je dan een aparte functie hebt die de fouten wegschrijft naar een logbestand, is zoiets wel makkelijk.
Voorbeeld:
  1. <?PHP
  2. // log functie
  3. function reportMySQL($sQuery, $sError, $iError, $sFile, $iLine)
  4. {
  5. // doe iets met die vars
  6. }
  7.  
  8. // je query uitvoeren
  9. $sQuery = "SELECT * FROM <tbl> WHERE iets='blaat'";
  10. if(!$rResult = MySQL_Query($sQuery))
  11. {
  12. reportMySQL($sQuery, MySQL_Error(), MySQL_Errno(), __FILE__, __LINE__);
  13. } else
  14. {
  15. // ga door
  16. }
  17. ?>

Anders moet je je query 2 keer plaatsen, dan vind ik een var. toch echt handiger en duidelijker.
Offline Gerard - 04/04/2006 14:05 (laatste wijziging 04/04/2006 14:12)
Avatar van Gerard Ouwe rakker
Citaat:
zo'n rommel haat ik nu sé je maakt een variable aan met inhoud. Je kan ook gewoon je inhoud in de functie zetten hé. Ze zitten dan te zagen over serverload maar als je 1000den queries zo doet kan ik het wel gaan geloven...


Sommige mensen vinden het soms makkelijker om dit te doen. Hoewel het inderdaad zonde is dat je eerst alles in een variabele zet heeft dit ook wel 1 groot voordeel; je kan de gehele variabele echoën en ziet zo gelijk wat er gezonden wordt naar de database. Voor mensen die niet met een MySQL Class werken kan dit nog wel eens handig zijn bij debugging.

edit Kleine opmerking nog over onderstaande post van henri welke een opvolging is van de posts hierboven. De naamconventie schrijft voor dat je MySQL functies met UPPERCASE schrijft.
Offline xSc - 04/04/2006 14:10 (laatste wijziging 04/04/2006 14:56)
Avatar van xSc Onbekend SELECT COUNT(*)

Ik denk dat

SELECT COUNT(id)

sneller is, met hetzelfde resultaat. Als je de rijen van 1 kolom telt, heb je evenveel rijen wanneer je de rijen van alle kolommen telt.

@Proximus, bedankt!
Offline Nrzonline - 04/04/2006 14:44 (laatste wijziging 04/04/2006 14:45)
Avatar van Nrzonline PHP ver gevorderde klopt mijn fout Simon,

moet idd mysql_result($var,0) zijn, sry sry rry 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.344s