|
| Lykkedes min query ? Fra : Thomas P |
Dato : 10-07-01 10:13 |
|
Hej,
Jeg vil gerne lidt mere til bunds i hvorvidt min query er lykkedes. Derfor
tog jeg og slog kort op på mysql.com, men fandt ikke det helt store. Lad os
nu sige, at jeg gerne vil vide hvorvidt en bestemt post findes i min
database. Jeg vil gerne vide om posten med id=1 findes. Derfor siger jeg
$qry = mysql_query("SELECT * FROM tabel WHERE id=1"); Nu spørger jeg så, om
den fandtes ved at sige if ($qry) { }
Hvad gør jeg galt, siden dette ikke virker ?
--
- Thomas
~~~~~~~~
.... http://www.FlowCode.f2s.com - where code flows
.... mailto:blomme@post.com - where email goes
| |
Stefan Bruhn (10-07-2001)
| Kommentar Fra : Stefan Bruhn |
Dato : 10-07-01 10:21 |
|
On Tue, 10 Jul 2001 11:12:36 +0200, "Thomas P" <blomme@post.com> wrote:
>Hej,
>
>Jeg vil gerne lidt mere til bunds i hvorvidt min query er lykkedes. Derfor
>tog jeg og slog kort op på mysql.com, men fandt ikke det helt store. Lad os
>nu sige, at jeg gerne vil vide hvorvidt en bestemt post findes i min
>database. Jeg vil gerne vide om posten med id=1 findes. Derfor siger jeg
>$qry = mysql_query("SELECT * FROM tabel WHERE id=1"); Nu spørger jeg så, om
>den fandtes ved at sige if ($qry) { }
>Hvad gør jeg galt, siden dette ikke virker ?
Brug if (mysql_num_row($qry)>0) { }
Mvh. / Regards Stefan Bruhn
--
<?$email = unserialize("a:15:{i:0;i:115;i:1;i:116;i:2;i:101;i:3;i:102
;i:4;i:97;i:5;i:110;i:6;i:64;i:7;i:98;i:8;i:114;i:9;i:117;i:10;i:104
;i:11;i:110;i:12;i:46;i:13;i:116;i:14;i:111;}");
for ($i=0;$i<=15;$i++) {echo chr($email[$i]);}?>
| |
Niels Andersen (10-07-2001)
| Kommentar Fra : Niels Andersen |
Dato : 10-07-01 10:28 |
|
"Thomas P" <blomme@post.com> wrote in message
news:3b4ac66d$0$360$edfadb0f@dspool01.news.tele.dk...
> $qry = mysql_query("SELECT * FROM tabel WHERE id=1"); Nu spørger jeg så,
om
> den fandtes ved at sige if ($qry) { }
> Hvad gør jeg galt, siden dette ikke virker ?
For det første:
Fx "SELECT id FROM..." i stedet. Lad være med at hente mere data end højest
nødvendigt!
Selv hvis du rent faktisk SKAL bruge alle felter, så er det dårlig skik at
bruge stjernen, nævn alle feltnavnene i stedet.
Men din "if($qry)" fortæller ikke om der var noget i resultatet, den
fortæller bare om du fik et resultat. Altså, hvis det, du får retur, er
false, så er der noget HELT galt. Måske er der tastefejl eller syntaxfejl i
din query.
Hvis du vil se hvor meget data der kom fra databasen kan du bruge fx.
"mysql_num_rows()". Den fortæller dig hvor mange rækker du fik retur.
Hvis du ikke skal bruge de data der kommer, er her en anden metode:
$result = mysql_query('SELECT count(id) AS antal WHERE id=1');
$row = mysql_fetch_array($result)
echo 'Der er '.$row['antal'].' rækker, hvor id=1.';
Med denne metoder er det eneste der bliver overført fra databasen det ene
tal du skal bruge.
--
Mvh.
Niels Andersen
| |
|
|