Ik heb een query in PHP die één regel resultaat op zou moeten leveren. Als ik met een die de query toon en deze kopieer naar PHPMyAdmin of MySQL Workbench, werkt hij inderdaad. Maar in de het PHP script geeft hij geen resultaat.

Dit is de gegenereerde query:
SELECT tblArtikel.artikelID, naam, afbeelding, aantal, prijs FROM tblArtikel JOIN tblOrderregel ON tblArtikel.artikelID = tblOrderregel.artikelID WHERE sessionID = '9ta60t0is93e27qmftvreb49d0'

Dit is de PHPcode:
<?php
require_once 'config.php';
$session_id = session_id();

$sql = "SELECT tblArtikel.artikelID, naam, afbeelding, aantal, prijs " .
"FROM tblArtikel " .
"JOIN tblOrderregel " .
"ON tblArtikel.artikelID = tblOrderregel.artikelID " .
"WHERE sessionID = '" . $session_id . "'";
//die($sql);

$artikelen = ($sql);

if(mysql_num_rows($artikelen) > 0)
{
echo("de rij is gevonden");
}
?>


Ik krijg de melding:

Warning: mysql_num_rows() expects parameter 1 to be resource, string given in C:\xampp\htdocs\ScarlettMarijsPHP\testsql.php on line 14

Iemand enig idee waar dit fout kan gaan?
Je voert de query nergens uit.
Dûh...lekkere muts ben ik. Dank je wel!

Toevoeging op 29/06/2013 14:12:27:

Toch werkt het nu nog niet:

<?php
require_once 'config.php';
$session_id = session_id();

$sql = "SELECT tblArtikel.artikelID, naam, afbeelding, aantal, prijs " .
"FROM tblArtikel " .
"JOIN tblOrderregel " .
"ON tblArtikel.artikelID = tblOrderregel.artikelID " .
"WHERE sessionID = '" . $session_id . "'";
//die($sql);

$artikelen = mysql_query($sql);

if(mysql_num_rows($artikelen) > 0)
{
echo("de rij gevonden");
}
?>
Foutafhandeling?
Echo de query eens. Is ie zoals je verwacht?
Die komt er goed uit:

SELECT tblArtikel.artikelID, naam, afbeelding, aantal, prijs FROM tblArtikel JOIN tblOrderregel ON tblArtikel.artikelID = tblOrderregel.artikelID WHERE sessionID = '9ta60t0is93e27qmftvreb49d0'

Als ik die in de database in het queryveld kopieer, werkt hij ook gewoon.
Wat werkt er dan nu niet? (En wat wel?)
De query werkt gekopieerd buiten het PHP script wel (in PHPmyAdmin en MySQL Workbench), maar in de pagina niet. Krijg nog steeds de melding:

Warning: mysql_num_rows() expects parameter 1 to be resource, string given in C:\xampp\htdocs\ScarlettMarijsPHP\testsql.php on line 14

Hij vindt de rij dus niet.
Dat is deze regel:
if(mysql_num_rows($artikelen) > 0)

En $artikelen is het resultaat van mysql_query()?

Als dat zo is krijg je geen ... string given ... in de error.
Zat nog een probleempje in de databaseconnectie in mijn config.php.
Dus met de mysql_query ervoor gaat het nu goed. Dank voor de hulp!

Reageren