Mailinglisten-Archive |
Aloha ihr,
ich hab da gerade ein Problem.
Ich habe ein Suchformular, in dem der DAU mit * und ?
suchen kann.
* = beliebig viele Zeichen,
_ = genau ein Zeichen.
Dummerweise kam irgend ein Spezialist auf die Idee, dafür
% = beliebig viele Zeichen,
_ = genau ein Zeichen.
in SQL zu nehmen.
Nichst leichter als das dachte sich Mathias, und machte:
(1) $suchstring = str_replace("%", "\%", $suchstring); // Maskiere
%-Zeichen
(2) $suchstring = str_replace("_", "\_", $suchstring); // Maskiere
_-Zeichen
(3) $suchstring = str_replace("%", "\%", $suchstring); // Tausche * -> %
(4) $suchstring = str_replace("%", "\%", $suchstring); // Tausche ? -> _
Nur leider tut das nicht ganz so wie erwartet.
Zeilen (3) und (4) machen genau das gewünschte,
Zeilen (1) und (2)
machen aus % statt \% einfach \\%
machen aus _ statt \? einfach \\?
*grumpf*
Wie mache ich das richtig ?
Danke und Grüße, Mathias
Mathias mathias_(at)_appc11.gsi.de
php::bar PHP Wiki - Listenarchive