hoi..

ik zit met het volgende:

ik wil namelijk controleren op 2 maal 2 waardes die moeten kloppen.
voorbeeldje:



.....WHERE '.$waarde1.'= waarde1 AND '.$waarde2.'= waarde 2 OR WHERE '.$waarde1.'= waarde2 AND '.$waarde2.'= waarde 1  ORDER BY ID DESC;



echter herkend die dit niet als een geldige opdracht en geeft een foutmelding.

iemand een idee?
momenteel probeer ik het via onderstaande manier, echter dit werkt ook niet geheel zoals ik wil..


$resultaat = mysql_query('SELECT * FROM tabelnaam WHERE '.$waarde1.' = waarde1 ORDER BY id DESC;');
if (!$resultaat) {
    die('Foutieve query: ' . mysql_error());
}

while ($rij = mysql_fetch_assoc($resultaat)) {
echo '<table style="width: 300px">	<tr>		<td class="auto-style1">'.$rij['data'].'</td>	</tr></table>'; 


$resultaat = mysql_query('SELECT * FROM tabelnaam WHERE '.$waarde2.' = waarde1 ORDER BY id DESC;');
if (!$resultaat) {
    die('Foutieve query: ' . mysql_error());
}

while ($rij = mysql_fetch_assoc($resultaat)) {
echo '<table style="width: 300px">	<tr>		<td class="auto-style1">'.$rij['data'].'</td>	</tr></table>'; 
}

}



ben er al dagen mee bezig maar kom er niet meer uit..
Een waarde moet als het geen getal is tussen quotes staan.

En gebruik haakjes bij gebruik van AND en OR.

... AND (... OR ...)
is anders dan
(... AND ...) OR ...
 .....WHERE '.$waarde1.'= waarde1 AND '.$waarde2.'= waarde 2 OR WHERE '.$waarde1.'= waarde2 AND '.$waarde2.'= waarde 1  ORDER BY ID DESC; 

Kan er in 1 regel/statement zoals hierboven 2x WHERE staan?

hoi Sante, beste wensen nog trouwens aan ieder hier...
dus op deze manier?


.....WHERE ".$waarde1." = waarde1 AND ".$waarde2." = waarde 2 OR WHERE ".$waarde1." = waarde2 AND ".$waarde2." = waarde 1  ORDER BY ID DESC; 


of


'"   "'

?

en hoe moet ik in dit geval met de haakjes werken?
begrijp je uitleg niet helemaal sorry



[size=xsmall]Toevoeging op 07/01/2015 21:57:31:[/size]

Obelix en Idefix op 07/01/2015 21:52:21

 .....WHERE '.$waarde1.'= waarde1 AND '.$waarde2.'= waarde 2 OR WHERE '.$waarde1.'= waarde2 AND '.$waarde2.'= waarde 1  ORDER BY ID DESC; 

Kan er in 1 regel/statement zoals hierboven 2x WHERE staan?


ja weet niet of dat klopt hoor, ik ben ermee aan het stoeien momenteel
Bouw foutafhandeling in dan zie je de fouten op het scherm.
Obelix en Idefix op 07/01/2015 21:52:21

 .....WHERE '.$waarde1.'= waarde1 AND '.$waarde2.'= waarde 2 OR WHERE '.$waarde1.'= waarde2 AND '.$waarde2.'= waarde 1  ORDER BY ID DESC; 

Kan er in 1 regel/statement zoals hierboven 2x WHERE staan?

Goed gezien Obelix, dat kan niet.

Het moet zijn:

.... WHERE (waarde1 = 12 AND waarde2 = 34) OR (waarde1=34 AND waarde2=12)

Dit is iets simpeler

.... WHERE waarde1 IN (12, 34) AND waarde2 IN (12, 34)

Tenzij wilt uitsluiten dan zowel waarde1 als waarde2 (bv) 12 mogen zijn.

mm oke dus beide doen eigenlijk hetzelfde?


ik hou je op de hoogte tnx
Niet helemaal

als je in een tabel dit hebt


+-----------+-----------+
|  waarde1  |  waarde2  |
+-----------+-----------+
|     12    |     34    |
+-----------+-----------+
|     12    |     12    |
+-----------+-----------+

Met de eerste where conditie krijg je alleen het eerste record, met de tweede allebei.

Reageren