"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

mysql: suche innerhalb der spalten

kleinerChemiker 12.12.2004 - 19:04 605 3
Posts

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4281
ich habe eine tabelle in der u.a. namen stehen. nun will ich nach namen suchen, bzw. auch nur nach teilen des namens. also wenn der name z.b. maier ist, soll er auch gefunden werden, wenn nur aie eingegeben wird. ich habs mit like versucht, bekomme aber nur eine fehlermeldung :confused:

so hab ichs versucht: $query = "SELECT id, name, last_login, FROM chars WHERE name LIKE '$name'";

daw ist die fehlermeldung: Fehler in der Syntax bei 'FROM chars WHERE name LIKE aie' in Zeile 1.

tia

MIK
Bearbeitet von kleinerChemiker am 12.12.2004, 19:27

DKCH

...
Registered: Aug 2002
Location: #
Posts: 3279
einerseits brauchst wohl ' um den such-string, andererseits wohl wildcards - iirc steht % für beliebig viele zeichen und _ für eins...

in deinem fall dann also $query = "SELECT id, name, last_login FROM chars WHERE name LIKE \'%".$name."\'%"; auf die umständliche ;)

edit: stimmt, _ is sql für eins, ? is dann des von dao
und das mitm beistrich is auch kein schlechtes argument, true :D
Bearbeitet von DKCH am 12.12.2004, 19:23

tomstig

OC Addicted
Avatar
Registered: Nov 2003
Location: /home/tomstig/
Posts: 1341
also, gleich zwei fehler:
so muss es lauten:

$query = "SELECT id, name, last_login FROM chars WHERE name LIKE '%" . $name . "'%";

da findet er hallmaierich, wenn du statt % ein _ machst dann findet er nur maier...

%... entspricht einer beliebigen anzahl von zeichen, selbst 0 zeichen
_... entspricht genau einem zeichen...

edit: ownt, aber den fehler hat er nicht gefunden :p (er muss den beistrich nach last_login weggeben ;) )
und afaik ist '_' der wildcard für nur ein zeichen...
Bearbeitet von tomstig am 12.12.2004, 19:22

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4281
warg, der beistrich wars. ich hab nämlich vor allem wegen der fehlermeldung gepostet. hatte % auch schon drinnen, nur dauernd diese dumme fehlermeldung

thx :)
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz