de bedoeling is dat hij het resultaat kan vergelijken deze komen overeen alleen werkt het niet, heeft iemand misschien idee wat ik fout heb gedaan.

<?php
$sql ="SELECT naam FROM gebruiker WHERE gebruiker_ID = 1";
$resultaat = mysql_query($sql);
$rij = mysql_fetch_object($resultaat);
if($rij["naam"]=="test"){
echo "werkt";//werkt
}else{
echo "nog niet";//werkt niet
}
?>
<?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]
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 :)
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
Hij doet het en bedankt voor de tip voor de foutafhandeling ;)
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.
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... ;)

Reageren