/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
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



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste