<?php
$sql ="SELECT naam FROM gebruiker WHERE gebruiker_ID = 1";
$resultaat = mysql_query($sql);
$rij = mysql_fetch_assoc($resultaat);
if($rij['naam']=="test"){
echo "werkt";//werkt
}else{
echo "nog niet";//werkt niet
}
?>
[edit]
foutje :S
[/edit]
Link gekopieerd
ten eerste, zorg voor foutafhandeling
<?php
$resultaat = mysql_query($sql) or die (mysql_error());
?>
wat ik niet zeker weet, want ik gebruik mysql_fetch_array, maar mysql_fetch_object heeft toch een $object->$value notatie?
overigens is mysql_fetch_object de traagste van de vier om je resultaat in een array te plaatsen.
EDIT: @robert, nu je het zegt, die enkele quotes had ik over het hoofd gezien :)
Link gekopieerd
Gebruik in dit geval mysql_fetch_assoc() ipv mysql_fetch_object, dat werkt hier wel.
Gebruik je mysql_fetch_object() dan zul je 'naam' moeten ophalen als $rij->naam
Link gekopieerd
?
Onbekende gebruiker
23-10-2006 23:21
Hij doet het en bedankt voor de tip voor de foutafhandeling ;)
Link gekopieerd
Blanche schreef op 23.10.2006 19:22
Gebruik in dit geval mysql_fetch_assoc() ipv mysql_fetch_object, dat werkt hier wel.
Gebruik je mysql_fetch_object() dan zul je 'naam' moeten ophalen als $rij->naam
Aanvulling: mysql_fetch_assoc is ook nog eens een stuk sneller dan mysql_fetch_object.
Link gekopieerd
Waarom een gedeelte van de vergelijking in php doen wanneer dit prima in SQL kan worden uitgevoerd? Dat maakt de boel een stuk sneller en efficienter:
<?php
$sql ="
SELECT
CASE
WHEN COUNT(naam) > 0 THEN 'gelukt'
ELSE 'mislukt'
END
AS result
FROM
gebruiker
WHERE
gebruiker_ID = 1
AND
naam='test'
GROUP BY
naam";
$resultaat = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_assoc($resultaat);
echo $row['result'];
?>
Niet getest, dus geen garantie... ;)
Link gekopieerd