[GastForen Programmierung/Entwicklung PHP und MySQL PHP - preg_match_all -> Suche; unknown modifier

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

PHP - preg_match_all -> Suche; unknown modifier

sejau
Beiträge gesamt: 298

30. Sep 2011, 20:25
Beitrag # 1 von 2
Bewertung:
(1242 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo

Ich bin immer noch an meiner Suchfunktion dran, um statische HTML seiten zu druchsuchen.

Ich bin nun praktisch fertig, jedoch wollte ich noch testen, was passiert, wenn jemand bei der Suche
zb etwas eingibt wie:

Code
<form name="input" action="$_SERVER[PHP_SELF]" method="get"> 
Suche: <input type="text" name="s" value="Suche" /><br />
<input type="submit" value="Submit" />
</form>


Und prompt gibt er mir dann Fehler aus:

Zitat Warning: preg_match_all() [function.preg-match-all]: Unknown modifier '&' in ***/suche.php on line 201


Der Modifier wäre ja ein Teil vom regulären Ausdruck in preg_match_all.
(sieht übrigens so aus bei mir:
Code
	preg_match_all("/(\<p\>|\<h[1-9]\>)(.+)". $suchstring ."(.+)(\<\/p\>|\<\/h[1-9]\>)/i", $contents, $matches, PREG_SET_ORDER); 

und liegt ausserdem auf 'line 201', was wohl heisst, dass das Problem wirklich hier ist...

Ich habe also gedacht, dass das '&' Zeichen als Modifier aufgefasst wird - keine Ahnung wie, aber ja.
Also habe ich am Anfang bei der Sucheingabe gewisse Zeichen ersetzen lassen;

Code
$ohnehtml = htmlentities($_GET['s'],ENT_COMPAT , "ISO-8859-1"); //einerseits validierung, damit kein html eingegeben werden kann und zweitens damit auch umlaute gesucht werden können. 
$forbidden_caracs = array("$", "£", "|", "#");
$suchstring = str_replace($forbidden_caracs, ' ', $ohnehtml);


aber leider bleibt die Fehlermeldung bestehen.

Hat jemand eine Ahnung, weshalb das passiert?

Vielen Dank schon mal.

gruss

sejau
X

PHP - preg_match_all -> Suche; unknown modifier

Pozor
Beiträge gesamt: 892

7. Okt 2011, 15:42
Beitrag # 2 von 2
Beitrag ID: #481861
Bewertung:
(1172 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo sejau,

das dürfte wohl an einem slash "/" liegen. Der bewirkt, das der Regexparser
meint die Regel sei fertig und dass jetzt nur noch modifier kommen...
All die Regex Steuerzeichen sollten escaped werden (mit "\") sonst kann es
zu solchen Fehlermeldungen kommen.

Testumgebung für regex von oesi50.
Da siehst Du auch was es alles zu escapen gibt...


als Antwort auf: [#481429]

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
02.02.2023

Prozesse optimieren und effizient gestalten

Zürich
Donnerstag, 02. Feb. 2023, 08.00 - 10.00 Uhr

Digitalisierung, Webauftritt

Digitalisierung mitgestalten - Worauf kommt es an? Wie wichtig ist die Webseite? Webseite mit Word Press? Interne Prozesse optimieren

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: Birol Isik, E-Mailinfo AT bkcc DOT ch

https://digitalisierung-heute.ch/digitalisierung-informationstag-schweiz/

Veranstaltungen
01.03.2023 - 09.03.2023

Online
Mittwoch, 01. März 2023, 00.00 Uhr - Donnerstag, 09. März 2023, 00.00 Uhr

Online Webinar

Wie gehen wir mit diesen Veränderungen um? Was ist notwendig, damit wir die Digitalisierung im Unternehmen klappt? Veränderungsprozesse verstehen und entsprechend handeln Mitarbeiter als Botschafter Webseite mit WordPress erstellen SEA /SEO (Ads aufschalten)

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: B. Isik, E-Mailinfo AT snfa DOT ch

https://www.fernstudiumfitness.ch/digitalisierung-schweiz/