MYSQL Abfrage Where And Like Or

Sasch

New member
Hallo,

ich habe folgende Mysql Datenabfrage:

PHP:
 <?php

$hostname="xxxock";
    $database="xxxx";
    $benutzername="xxxx";
    $passwort="xxx";

    $link = mysql_connect("$hostname", "$benutzername", "$passwort", "$database");

$uid = xxxxxxx;

$sql_res=mysql_query("SELECT * FROM db5075xxxxxxx WHERE uid='$uid' AND fname like '%".$_REQUEST['term']."%' or lname like '%".$_REQUEST['term']."%' ");
while($row = mysql_fetch_array($sql_res))
{
	$results[] = array('label' => $row['lname']);
       
}

echo json_encode($results);
echo mysql_error();


?>


Funktioniert alles. Allerdings wird in der Abfrage die WHERE Anweisung uid='$uid' ignoriert.

Weiß jemand warum?


Vielen Dank :)
 
Da fehlt eine Klammer...

... aber dir ist hoffentlich klar, dass dieser Code extrem anfällig für SQL-Injection.
 
Oh wie schön, ne Injectionsfreundliche Abfrage <3

Um es mal schnell zu sagen, du musst deine Abfrage in der Where klammern

Code:
WHERE uid='$uid' AND (fname like '%".$_REQUEST['term']."%' or lname like '%".$_REQUEST['term']."%')

Außerdem solltest du die eingaben mit "mysql_real_escape_string()" absichern! Janz wischtisch!!!!!!!!!
 
Zurück
Oben