lower und like bei oracle
Thomas
- datenbank
0 Frank0 Sven Rautenberg0 Frank
0 Thomas
Hallo zusammen!
Ich habe eine Datenbankabfrage fertiggestellt und bin gerade Dabei meine Bugs auszumerzen.
Ich frage meine DB (Oracle) durch ein Formular über PHP ab.
Den Einzigsten Bug den ich nun hab ist folgender:
Ich habe eine Suchfunktion eingebaut, so dass man in meiner Tabelle bestimmte Sachen suchen kann zB Kunde oder Nachname.
Gestern hab ich es endlich geschafft, dass man zB kundennamen nicht nur gross sondern auch klein reinschreiben kann:
$oci = "select * from denic_handle where lower(kunde) = lower('$textfield')";
Soweit toll Doch ich habe auch sehr lanhe Kundennamen in der Datenbank. Das Problem ist, dass ich aber genau den GANZEN Namen eingeben muss, damit er sucht. Ich kann es zwar gross und klein schreiben wie ich will, aber ich will auch zB nur 'B' eingeben können und er spuckt mir dann alle Kunden mit B raus. Ich weiß, dass es mit "like" geht. Ich weiß nur nicht wie ich das mit "lower" kombinieren soll, damit es auch klappt!
Gruß, Thomas
$oci = "select * from denic_handle where lower(kunde) = lower('$textfield')";
Hi...
statt des "=" evt. das "like" verwenden
etwa so:
select *
from
denic_handle
where
lower(kunde) LIKE lower('%$textfield%')
sicher, dass dein PHProzessor $textfield gleich in dem String (zwischen den Hochkommas) mit dem Wert von $textfield ersetzt?
wenn ich PHP wäre, wäre das alles ein String und $textfield wäre eine Zeichenkette darin
Gruß, Frank
Moin!
select *
from
denic_handle
where
lower(kunde) LIKE lower('%$textfield%')
sicher, dass dein PHProzessor $textfield gleich in dem String (zwischen den Hochkommas) mit dem Wert von $textfield ersetzt?
wenn ich PHP wäre, wäre das alles ein String und $textfield wäre eine Zeichenkette darin
Dann wärst du aber ein ziemlich ungewöhnliches PHP.
Innerhalb von "..."-Zeichenketten werden Variablennamen durch den Variablenwert ersetzt. Bei einfachen Variablen fügt man sie einfach so ein, bei komplexeren Variablen (Arrays, Hashes) muss man sie in geschweifte Klammern einschließen - oder den String zusammenaddieren.
$string = "Ein String mit $variable und {$hash['key']} drin, und mit ".$extra['addiertem']." Hash hinten";
- Sven Rautenberg
Hi Sven,
Dann wärst du aber ein ziemlich ungewöhnliches PHP.
auch gut... wie sagt man, "lebe lieber ungewöhnlich" ?
Innerhalb von "..."-Zeichenketten werden Variablennamen durch den Variablenwert ersetzt. Bei einfachen Variablen fügt man sie einfach so ein, bei komplexeren Variablen (Arrays, Hashes) muss man sie in geschweifte Klammern einschließen - oder den String zusammenaddieren.
interessant, man lernt nie aus... vielleicht finde ich irgendwann die Zeit nach .net, mich ausgiebig mit den evt. vorhandenen Vorzügen von PHP zu beschäftigen....
Gruß.. so long
Frank
$string = "Ein String mit $variable und {$hash['key']} drin, und mit ".$extra['addiertem']." Hash hinten";
- Sven Rautenberg
Hi Frank!
Vielen lieben Dank hat wunderbar geklappt :)
Gruß, Thomas