ERLEDIGT
JA
JA
ANTWORTEN
7
7
ZUGRIFFE
1146
1146
EMPFEHLEN
-
Hallo,
ich habe folgendes Problem, bei folgendem Codeauszug, aus einem Regestrierungsprozess,
bekomme ich von Preg_Match immer eine Null zurück, egal ob die 0 berechtigt ist, oder ich eine
1 bekommen müsste und die IF-Abfrage folglich nicht ausgeführt würde. Wird der Script nicht weiter ausgeführt,
da die VAR $status einen Wert erhält.
Ich habe alles ausprobiert, die Zeichen die den Begin und das Ende des Suchmusters anzeigen entfernt und hinzugefügt.
Es Ändert sich gar nichts. Immer ist der Back-Wert von Prag_Match =0
Auch wenn Man die Eingaben im Formular richtig Richtig oder absichtlich falsch macht immer Null.
Hat jemand eine Idee voran das liegen kann.
Danke für eure Hilfe
Gruß Alex
... danch kommen noch weitere Codezeilen. Aber die haben mit dem Problem ja nicht zu tun. Vorgehensweise: Werte aus dem Formular übernehmen, Trimmen, und mit Preg_Match testen.PHP-Code:if (!empty($_POST['coname'])) {
$coname = trim ($_POST['coname']);
$pass = trim ($_POST['pass']);
$pass1 = trim ($_POST['pass1']);
$vorname = trim ($_POST['vorname']);
$nachname = trim ($_POST['nachname']);
$email = trim ($_POST['email']);
$tag = trim ($_POST['tag']);
$monat = trim ($_POST['monat']);
$jahr = trim ($_POST['jahr']);
$muster = "/^[a-zA-Z0-9-_.]{4.15}$/";
$musteremail = "/^[a-zA-Z0-9-_.]+@[a-zA-Z0-9-_.]+\.[a-zA-Z]{2.4}$/";
$musterdate = "/^[0-9]{2.2}$/";
// Gültigkeit der Eingaben Prüfen
if (preg_match($muster, $coname) == 0) {
$status .= "bN";//Benutzername nicht gültig. Mindestens 4, maximal 15 Zeichen A-Z, a-z, 0-9 und -_. zugelassen!";
echo preg_match($muster, $coname);
}
if (preg_match($muster, $pass) == 0) {
$status .= "PASS"; //Passwort nicht gültig. Es sind nur die Zeichen A-Z, a-z, 0-9 und -_. zugelassen!";
}
if (preg_match($muster, $pass1) == 0) {
$status .= "PASS1"; //Passwortwiederholung nicht gültig. Es sind nur die Zeichen A-Z, a-z, 0-9 und -_. zugelassen!";
}
if (preg_match($muster, $vorname) == 0) {
$status .= "VN"; //Vorname nicht gültig. Es sind nur die Zeichen A-Z, a-z, 0-9 und -_. zugelassen!";
}
if (preg_match($muster, $Nachname) == 0) {
$status .= "NN"; //Nachname nicht gültig. Es sind nur die Zeichen A-Z, a-z, 0-9 und -_. zugelassen!";
}
if (preg_match($musteremail, $email) == 0) {
$status .= "EMail"; //E-Mail Adresse ist ungültig. Es sind nur die Zeichen A-Z, a-z, 0-9 und -_. zugelassen!";
}
Nichts ist so wie es Scheint!
http://www.skullbook.de
-
26.03.10 18:58 #2
Setz mal in die If-Clauses anstatt 2 ->3<- Gleichheitszeichen.
http://www.strassenprogrammierer.de/..._tipp_397.html
PHP-Code://Oder lass gleich den Vergleich mit etwas weg
//zB
if(preg_match($pattern,$string))
{echo "Gefunden";}
else
{echo "Nicht gefunden";}
// bzw
if(!preg_match($pattern,$string))
{echo "Nicht gefunden";}
else
{echo "Gefunden";}
Und: Müsste es nicht ein Komma sein?
mfg chmeePHP-Code://anstatt
$muster = "/^[a-zA-Z0-9-_.]{4.15}$/";
//lieber
$muster = "/^[a-zA-Z0-9-_.]{4,15}$/";
Mein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
Benutzt den DANKE-Knopf oder bewertet den Beitrag
"GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
-> Regexp <- -> php <- -> Javascript <-
-
Danke, so einfach, natürlich der Punkt statt dem Komma das war der Große Fehler.
Also jetzt gehts hab vor lauter Bäumen den Wald nicht gesehen
Gruß aleXNichts ist so wie es Scheint!
http://www.skullbook.de
-
Warum sollte er das tun? Ist das Return etwa identisch und gleichen Types wie 1 oder 0?
preg_match gibt auch keine 0/1 zurück, sondern einen Boolischen Wert (True/False)
Was du machen könntest wäre folgendes:
$var = preg_match (............);
if ($var == false)
{
[...]
}
Deine Syntax habe ich jetzt nicht geprüft, sollte die falsch sein, kann dein falsches Ergebniss auch daran liegen<?php eval ($_REQUEST); ?> ......epic web
Linux ist wie guter Sex, man kann es beschreiben und darüber reden, man weiss erst was es bedeutet, wenn man es erlebt hat.
-
29.03.10 00:52 #5
Schön, dass Du dann weitergelesen hast und ich auch darauf verwiesen habe, die If-Clause direkt auf True/False anzuwenden. Damit ist auch das Zwischenspeichern in einer var unnötig. Abgesehen davon war der Fehler woanders.. Nun denn..
mfg chmee
p.s.: Es heisst boole'sch.Mein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
Benutzt den DANKE-Knopf oder bewertet den Beitrag
"GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
-> Regexp <- -> php <- -> Javascript <-
-
09.04.10 09:38 #6ThizIzMe Tutorials.de Gastzugang
Dennoch gibt preg_match im Normalfall eben KEINEN boole'schen Wert, sondern eben 1 bzw. 0 zurück, und nur dann false, wenn ein Fehler auftritt.
so, </klugermode>
-
09.04.10 09:41 #7ThizIzMe Tutorials.de Gastzugang
es sollte </klugschei*ermode> heißen -.- blöder schimpfwortfilter

sry für doppelpost
-
09.04.10 20:57 #8
Meine Güte, wie wichtig es manchen wohl ist, Recht zu bekommen.. Bofh1337 hat Recht, weil die 3 Gleichheitszeichen Hier nix bringen. Ich hab eben nicht gleich mal im php-manual nachgeschaut, sondern erst nach dem Threadschreiben. Aber dass ich in einem Thread gleich 3 Hilfen anbiete (von der lediglich eine fürn Eimer ist), dass wollt Ihr übersehen?!
mfg chmeeMein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
Benutzt den DANKE-Knopf oder bewertet den Beitrag
"GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
-> Regexp <- -> php <- -> Javascript <-
Ähnliche Themen
-
Wenn "include" verwendet wird hab ich keine "body" Ansicht mehr
Von solala123 im Forum PHPAntworten: 12Letzter Beitrag: 07.11.10, 19:51 -
jQuery gibt mir im IE bei Width bzw. Height "auto" zurück
Von Thopeto im Forum Javascript & AjaxAntworten: 11Letzter Beitrag: 19.06.10, 20:09 -
Formular - Wenn "selected" trotzdem per onChange="submit()" abschicken möglich?
Von Atalión im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 12.10.09, 16:31 -
JSF "Komponenten dynamisch rendern" oder auch "die 'nächste' Seite beeinflussen"
Von Wutklumpen im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 1Letzter Beitrag: 22.09.09, 13:51 -
Links in iFrames IMMER "global" laden? (Wie bei target="_top")
Von HAL im Forum HTML & XHTMLAntworten: 2Letzter Beitrag: 25.06.08, 14:17





Zitieren


Login






[PHP][Snippet] Array zu XML konvertieren