variablenzuweisung funktioniert nicht
steffen
- php
Hi,
im folgenden Code geht es um die Variable $emailcheck. Dieser Code funktioniert auch!
$emailcheck=preg_match("!^\w[\w|.|-]+@\w[\w|.|-]+.[a-zA-Z]{2,4}$!",$email);
login_db();
$abfrage=mysql_query("SELECT Email FROM user WHERE Email = "". strtolower($email) ."" ");
if($result=mysql_num_rows($abfrage) or !$vorname or !$nachname or !$emailcheck){
if($result){
echo "Diese eMail wird bereits genutzt!";
}elseif(!$emailcheck){
echo "<p>".$emailcheck."Geben Sie eine korrekte eMail ein!</p>";
}
if(!$vorname or !$nachname){
echo "<p>Geben Sie bitte alle Daten ein!</p>";
}
echo "<br><br><a href="index.php">zurück</a>";
}
Leider funktioniert es nicht wenn ich den emailcheck in die if()-Anweisung schreibe, also so:
if($result=mysql_num_rows($abfrage) or !$vorname or !$nachname or !$emailcheck=preg_match("!^\w[\w|.|-]+@\w[\w|.|-]+.[a-zA-Z]{2,4}$!",$email)){
Demnach gibt er die Abfrage immer aus
if(!$emailcheck){
Wieso funktioniert das nicht?
Hi steffen,
if($result=mysql_num_rows($abfrage) or !$vorname or !$nachname or !$emailcheck=preg_match("!^\w[\w|.|-]+@\w[\w|.|-]+.[a-zA-Z]{2,4}$!",$email)){
Abgesehen davon, dass ich das total unleserlich finde, machs doch so:
if($result=mysql_num_rows($abfrage) or !$vorname or !$nachname or !preg_match("!^\w[\w|\.|\-]+@\w[\w|\.|\-]+\.[a-zA-Z]{2,4}$!",$email))
{
MfG, Dennis.
Hi Dennis,
sorry weiß nich wie das so farbig geht.
Da ich aber nochmal den emailcheck weiter unten brauche dachte ich mach ich es gleich in eine Variable, damit ich nicht wieder alles schreiben muss (ob das auch rechenleistung spart weiß ich nich)
mfg steffen
hi,
sorry weiß nich wie das so farbig geht.
Dazu hättest du nur in der textarea mal das voreingefügte Zitat von Dennis' Beitrag anschauen müssen.
Da ich aber nochmal den emailcheck weiter unten brauche dachte ich mach ich es gleich in eine Variable, damit ich nicht wieder alles schreiben muss (ob das auch rechenleistung spart weiß ich nich)
Warum machst du ihn dann nicht gleich vorher, und speicherst dir die Rückgabe in einer Variablen - die du dann sowohl in deiner IF-Abfrage, als auch "weiter unten" benutzt?
gruß,
wahsaga
hi wahsaga,
so hab ich es ja jetzt, aber frage mich nur wieso es nich klappt, wenn ich es in der if-anweisung schreibe
mfg
Hi steffen,
so hab ich es ja jetzt, aber frage mich nur wieso es nich klappt, wenn ich es in der if-anweisung schreibe
Es würde klappen, wenn du es so schreiben würdest:
if(($variable = preg_match(...)) !== false)
vermutlich würde auch das hier funktionieren:
if(!($variable = preg_match(...)))
Du musst du Zuweisung halt nochmal klammern.
MfG, Dennis.
echo $begrüßung;
vermutlich würde auch das hier funktionieren:
if(!($variable = preg_match(...)))
Du musst du Zuweisung halt nochmal klammern.
Nicht dass ich das begrüßen würde, aber so ist es nun mal.
echo "$verabschiedung $name";
echo $begrüßung;
ich will ja nicht kleinlich sein aber das geht so nicht.
Kein ö, ä, ü und ß in variabeln.
Aber ich gehe mal sicher davon aus das du das weisst.
Wenn ich schon dabei bin unnütze kommentare zu schreiben, muss
ich noch sagen du müsstest die variabeln noch initialisieren.
grüße torben
echo $begrüßung;
ich will ja nicht kleinlich sein aber das geht so nicht.
Kein ö, ä, ü und ß in variabeln.Aber ich gehe mal sicher davon aus das du das weisst.
echo "$verabschiedung $name";