Wort in einem $_POST suchen.

Tualex

Erfahrenes Mitglied
Hallo,

Wie kann ich in einem $_POST[''] ein wort suchen? Also das soll für mein Gästebuch sein, wenn da ein '<a href=' drin ist soll die post nicht in die DB gschrieben werden

Mfg
Tualex
 
Eine schnelle methode um mit PHP Strings nach einem anderen String zu durchsuchen ist str_pos(), so könntest du die Variablen checken ob das Vorhanden ist. Oder alle Variablen mit einem
PHP:
foreach($_POST as $val){
if(str_pos($val, 'Suchstring') === false) // eintrag nicht eintragen
}

Es gibt noch andere Lösungsansätze für dein "Problem", zB mit htmlentities() einfach alle <> usw durch die entsprechenden HTML-Codes zu ersetzen und somit auch unschädlich werden. Ein nl2br() muss natürlich dann NACH dieser funktion gemacht werden.
 
Ne das mit dem ersetzen hab ich ja schon gemacht aber ich will ja, dass der eintrag nicht mal gespeichert wird, wenn ein bestimmtest wort drin ist. Danke für den code!
 
Hi,
du könntest doch z.B. preg_match benutzen:
PHP:
<?php
$pattern = "/^.*(<a href=).*(>).*(<\/a>).*$/";
$str = $_POST['text'];
if(!preg_match($pattern, $str))
{
	//Eintrag vornehmen
}
else
{
	//Eintrag nicht vornehmen
}
?>
Gruß,
Snowowl
 
Anstatt dem Benutzer die Zeichenkette „<a href=“ ganz zu verbieten, könntest du die Eingaben durch Ersetzen der HTML-Schlüsselzeichen durch HTML-Zeichenreferenzen ganz einfach „entschärfen“. (Siehe htmlspecialchars()-Funktion)
 
Gumbo hat gesagt.:
Anstatt dem Benutzer die Zeichenkette „<a href=“ ganz zu verbieten, könntest du die Eingaben durch Ersetzen der HTML-Schlüsselzeichen durch HTML-Zeichenreferenzen ganz einfach „entschärfen“. (Siehe htmlspecialchars()-Funktion)
LoL? Guck mal bitte paar posts weiter oben...:rolleyes:

Ich nehm das aus einem Grund nicht: Wer will denn schon so ein Post im Gästebuch haben?
Bei mir ist ja ein flooder im Gästebuch da brauch ich was besseres.
Also das mit dem htmlspecialchars() hab ich ja schon am anfang eingebaut.
 
LoL? Guck mal bitte paar posts weiter oben...:rolleyes:
Worauf willst du mich damit aufmerksam machen? Etwa darauf, dass Engelchen bereits etwas Ähnliches geschrieben hat?
Verhalte dich bitte etwas respektsvoller deinem Gegenüber oder unterlasse solche Kommentare einfach.

Zu deinem Anliegen: Wie wär’s mit der strip_tags()-Funktion?
 
Na dann unterlass du mal erstrecht sowas! Der post oben war nur Spam und das steht denk ich auch in der Netiquette und ausserdem war das grade respektlos!
Danke für den command, aber den verstehe ich nicht ganz, wie ich den einsetzten muss.
 
Ja aber das entspricht nicht dem was ich will, oder? ich will ja, wenn da ein <a href tag drin ist, dass der Post nichtmal in der Datenbank gespeichert wird thx trotzdem
 
Zurück