mysql_query SELECT OR / And werden nicht zusammen ausgeführt
Hallo
ich hoffe, ihr könnt mir helfen, ich finde den Fehler nicht!
Leider wird bei der Suchabfrage die AND Bedigung nicht ausgeführt -
beim ersten Aufruf der Seite ohne den Submit-Button wird "bzeigen like ja" problemlos ausgeführt
nur in der Kombination nicht. Die Suchworte werden per "post" übergeben.
Was ist falsch?
Code:
<?
IF ($submit)
{
//Auslesen nach Sucheingabe
$list = mysql_query("SELECT * FROM
bewerberprofil
WHERE bberuf LIKE '%$suche%'
OR bid LIKE '%$suche%' OR barbeitsort LIKE '%$suche%' OR bplz LIKE '%$suche%' AND bzeigen LIKE 'ja' ") OR die(mysql_error());;
}
ELSE
{
//Daten auslesen
$list = mysql_query("SELECT * FROM
bewerberprofil
WHERE bzeigen LIKE 'ja' ORDER BY bname ");
}
while($row = mysql_fetch_array($list))
{
$beruf = nl2br($row['bberuf']);
echo "
?????
Backware
Dabei seit: 09.12.2004 Ort: bei Köln Alter: 23 Geschlecht:
Verfasst Fr 02.12.2005 16:36 Titel
Code:
"SELECT * FROM
`bewerberprofil`
WHERE
`bberuf` LIKE '%$suche%'
AND
`bzeigen` = 'ja'
AND
( `bid` LIKE '%$suche%' OR `barbeitsort` LIKE '%$suche%' OR `bplz` LIKE '%$suche%' )
so denke ich .. sollte es funzen
Zuletzt bearbeitet von Backware am Fr 02.12.2005 16:37, insgesamt 1-mal bearbeitet
nicole29
Account gelöscht Threadersteller
Ort: -
Verfasst Fr 02.12.2005 16:45 Titel
Leider nicht, jetzt erhalte ich folgende Fehlermeldung:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 8
habe es so eingefügt:
Code:
$list = mysql_query("SELECT * FROM
`bewerberprofil`
WHERE
`bberuf` LIKE '%$suche%'
AND
`bzeigen` = 'ja'
AND
( `bid` LIKE '%$suche%' OR `barbeitsort` LIKE '%$suche%' OR `bplz` LIKE '%$suche%' ")
nicole29
Account gelöscht Threadersteller
Ort: -
Verfasst Fr 02.12.2005 16:49 Titel
habe den Fehler im neuen Script - eine Klammer ist zuviel - aber ausgeführt wird es trotzdem nicht -
es werden auch die Einträge angezeigt die beim "bzeigen" - ein "nein" eingetragen haben
gtz
Dabei seit: 15.04.2002 Ort: - Alter: 33 Geschlecht:
Verfasst Fr 02.12.2005 16:51 Titel
nicole29 hat geschrieben:
habe den Fehler im neuen Script - eine Klammer ist zuviel - aber ausgeführt wird es trotzdem nicht -
es werden auch die Einträge angezeigt die beim "bzeigen" - ein "nein" eingetragen haben
wenn das da oben deine query is, dann mit sicherheit nich.
nicole29
Account gelöscht Threadersteller
Ort: -
Verfasst Fr 02.12.2005 17:02 Titel
sorry, so ist es online:
Code:
$list = mysql_query("SELECT * FROM
`bewerberprofil`
WHERE
`bberuf` LIKE '%$suche%'
AND
`bzeigen` = 'ja'
AND
`bid` LIKE '%$suche%' OR `barbeitsort` LIKE '%$suche%' OR `bplz` LIKE '%$suche%' ") OR die(mysql_error());;
}
wird aber nicht ausgeführt - es werden weiterhin auch die Einträge mit "nein" angezeigt.
gtz
Dabei seit: 15.04.2002 Ort: - Alter: 33 Geschlecht:
Verfasst Fr 02.12.2005 17:05 Titel
das sieht ja schon ganz anders aus.
vor die OR-kette gehört eine klammer und ans ende auch.
bitte mach dich mit grundlagen der aussagenlogik vertraut, bevor du mit demdatenbankkram weitermachst.
nicole29
Account gelöscht Threadersteller
Ort: -
Verfasst Fr 02.12.2005 17:25 Titel
Danke für Eure Hilfe!
so funktioniert es:
Code:
$list = mysql_query("SELECT * FROM
`bewerberprofil`
WHERE
(`bid` LIKE '%$suche%' OR `barbeitsort` LIKE '%$suche%' OR `bplz` LIKE '%$suche%' OR `bberuf` LIKE '%$suche%' )
AND
`bzeigen` = 'ja' ") OR die(mysql_error());;
}
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.