|  | 		    
					
        
         
          
         
	
          | |  | Select count..... hvad gør jeg galt? Fra : Jakob Munck
 | 
 Dato :  19-05-06 05:55
 | 
 |  | Jeg har en listning, hvor jeg tæller antallet af medlemmer af en portal, som
 har betalt for et tidsskrift. Optællingen ser sådan ud, og virker udmærket,
 så længere der er mindst én betalende abonnent:
 
 <?
 $antal = mysql_result(mysql_query("SELECT COUNT(*) FROM kamedlemmer WHERE
 betalt = '1'"),0) or die(mysql_error());
 ?>
 
 Hvis der ikke er nogen betalende abonnenter, vil jeg godt have, at den
 udskriver "Ingen betalende abonnenter" og det har jeg forsøgt at opnå ved at
 tilføje denne kode:
 
 <?
 if ($antal = = '0'){
 echo "Der er ingen betalende abonnenter";
 }
 ?>
 
 Men det virker ikke. Hvis antallet af betalende abonnenter er nul, bliver
 if-sætningen tilsyneladende slet ikke eksekveret, men der kommer heller
 ingen fejlmeldingen. Jeg gør altså et eller andet glat, men hvad??
 
 Hvem kan hjælpe?
 
 
 v.h.
 Jakob
 
 
 
 
 |  |  | 
  Michael Zedeler (19-05-2006) 
 
	
          | |  | Kommentar Fra : Michael Zedeler
 | 
 Dato :  19-05-06 09:02
 | 
 |  | 
 
            Jakob Munck wrote:
 <?
 if ($antal = = '0'){
 echo "Der er ingen betalende abonnenter";
 }
 ?>
 Der er to ting som springer i øjnene. For det første skriver du "= =", 
 hvilket jeg ikke tror virker. For det andet sammenligner du med en 
 streng på højresiden. Den del virker sikkert, men det er grimt.
 Mvh. Michael.
 -- 
 Which is more dangerous? TV guided missiles or TV guided families?
 Visit my home page at http://michael.zedeler.dk/ Get my vcard at http://michael.zedeler.dk/vcard.vcf |  |  | 
  Jakob Munck (19-05-2006) 
 
	
          | |  | Kommentar Fra : Jakob Munck
 | 
 Dato :  19-05-06 09:52
 | 
 |  | Tak for hjælpen, men det viste sig at fejlen lå et helt andet sted, end jeg
 havde troet. Det handler om at:
 
 $antal = mysql_result(mysql_query("SELECT COUNT(*) FROM kamedlemmer WHERE
 betalt = '1'"),0) or die(mysql_error());
 
 har den uheldige konsekvens, at hvis der er nul records at tælle, så melder
 udtrykket fejl, og så eksekveres den efterfølgende kode ikke. Derfor virker
 ingen efterfølgende optælling. Men nu har jeg fjernet mysql-error, og så
 virker det som det skal.
 
 v.h.
 Jakob
 
 
 
 
 |  |  | 
 |  |