2 Formulare + Fehlermeldung an falscher stelle

  • Themenstarter Themenstarter Comenius
  • Beginndatum Beginndatum
C

Comenius

Hi,

Ich habe 2 Formulare auf einer Seite, die beide von PHP überprüft werden.
In beiden ist eine Funktion eingebaut, die einen Fehler ausgibt, falls das Formular "leer" abgeschickt wurde.

Nunja, wie bereits gesagt, habe ich zwei Formulare. Fülle ich nun eines aus und schicke es ab, steht in dem anderen "Bitte alles ausfüllen...."

Beide haben unterschiedliche Namen etc.
Kann man dort nun etwas machen, damit soetwas nicht mehr passieren kann ?

Ich finde es nämlich schöner, alles auf einer Seite zu verarbeiten, als mit 1000 Dateien zu arbeiten.

Freue mich schon auf Antworten :)

Gruss
Commi
 
Packe in jedes Formular ein verstecktes <input> mit einem eindeutigen Wert, anhand dessen du das gesendete Formular identifizieren kannst.
 
Comenius hat gesagt.:
Kann man dort nun etwas machen, damit soetwas nicht mehr passieren kann?
Das kannst du dir nicht selbst ausmalen? :confused:

Den Elemten verschiedene Namen geben oder ein "hidden"-Input mitgeben,
in dem das Formular steht. Ich weiß nicht, aber ohne Code lässt sich da
wenig machen - da das in meinen Äuglein ein sehr allgemeines Problem ist.
 
Hi, sorry dass ich jetzt erst wieder antworte, aber hatte nen paar Probleme.

Hmmm, das mit den "hidden-Inputfeldern" ist klar. Ich dachte dass ihr davon ausgeht, dass man soetwas verwendet... Deswegen bis jetzt auch noch ohne Code.

Na egal.

Ich habe in beiden Formularen versteckte Felder, die ich auch abfrage.

Hier der Code von dem Login-Formular:
PHP:
   <?php
   if(isset($_POST[hiddenlogin_standart])){ 
   if($_POST['Nickname'] && $_POST['Passwort']){
   
   mysql_connect("$a", "$b","$c") or die(mysql_error()); 
   mysql_select_db("$d") or die(mysql_error()); 
   
   $Nickname	= $_POST['Nickname'];
   $Passwort	 = $_POST['Passwort'];
   
   $sql = "SELECT * FROM userdaten WHERE Nickname ='".$Nickname."' AND Passwort ='".$Passwort."'";
   $result = mysql_query($sql) or die(mysql_error()); 
   $row = mysql_fetch_assoc($result);
   }
   
   else { 
 $error_login = "<font class=\"text2\"><font color=\"#C00000\"><b>Falsche Logindaten!</b></font></font>";
   }
   
   if($row[Nickname] == $_POST[Nickname] && $row[Passwort] == $_POST[Passwort])
   { 
   $_SESSION['Nickname']	   =$row[Nickname]; 
   $_SESSION['Passwort']		=$row[Passwort]; 
   $_SESSION['Level']			  =$row[Level]; 
   }
   
   else {
 $error_login = "<font class=\"text2\"><font color=\"#C00000\"><b>Falsche Logindaten!</b></font></font>";
   }
   }
   ?>
   
   <ul id="navikopf">
   <font class="navitext"><li><b>&nbsp;..:: Login ::.. </b></a></li></font>
   </ul>
   <div id="loginMenu">
   <div id="loginErrorBox">
   <?php echo "$error_login"; ?>
   </div>
   <br>
   <form  name ="login" method="post" action="<?=$_SERVER[PHP_SELF]?>"> 
 <label class="login-label-standart"><font class="text2">&nbsp;&nbsp;<b>Nick: </font></b></label> 
   <input name ="Nickname" type="text" size="20" id="Nickname" class="loginform-standart" value=""> <br>
 <label class="login-label-standart"><font class="text2">&nbsp;&nbsp;<b>Pass.:</font></b></label> 
   <input name ="Passwort" type="password" size="8" id="Passwort" class="loginform-standart" value=""> <br>
   <input type="hidden" name="hiddenlogin_standart" value="1"> 
   &nbsp;<input type="submit" name="login_standart" class="loginbutton-standart" value="Login"> <br>
   </form>
   <div id="loginLinkBox">
   &nbsp;<a href="Passwort_vergessen.php" class="link">Pass. vergessen? </a><br>
   &nbsp;<a href="Registrieren.php" class="link">Registrieren </a><br>
   </div>
   </div>

Und Das Formular zum Registrieren:
PHP:
   <?php 
   $Vorname	   = $_POST['Vorname']; 
   $Nachname	= $_POST['Nachname']; 
   $Strasse		= $_POST['Strasse'];
   $PLZ			  = $_POST['PLZ'];
   $Ort			   = $_POST['Ort'];
   // usw.....
   
   if(isset($_POST['Hiddenregister'])){ 
   $allesok = 1; 
   
   mysql_connect("$a", "$b","$c") or die(mysql_error()); 
   mysql_select_db("$d") or die(mysql_error()); 
   
   // Hier kommen nur noch so funktionen wie Email-versenden etc. Nichts Weltbewegendes.
   ?>
   
   <div id="RegsitrierenBox">
   
   <form  name ="Registrieren" method="post" action="<?=$_SERVER[PHP_SELF]?>"> 
   
   <fieldset>
 <legend><font class="text3"><font color="#000060"><b>Lieferanschrift</b></font></font></legend>
   
 <label class="LabelRegistrieren"><font class="text3"><b>&nbsp;&nbsp;&nbsp;Vorname:</font></b></label> 
 <input name="Vorname" type="text" size="25" id="Vorname" class="RegistrierenForm" value="<? echo $Vorname;?>"> <br>
   
 <label class="LabelRegistrieren"><font class="text3"><b>&nbsp;&nbsp;&nbsp;Nachname:</font></b></label> 
 <input name="Nachname" type="text" size="50" id="Nachname" class="RegistrierenForm" value="<? echo $Nachname;?>"> <br>
   
 <label class="LabelRegistrieren"><font class="text3"><b>&nbsp;&nbsp;&nbsp;Strasse:</b></font></label> 
 <input name="Strasse" type="text" size="50" id="Strasse" class="RegistrierenForm" value="<? echo $Strasse;?>"> <br>
   
 <label class="LabelRegistrieren"><font class="text3"><b>&nbsp;&nbsp;&nbsp;PLZ:</b></font></label> 
   <input name="PLZ" type="text" size="50" id="PLZ" class="RegistrierenForm" value="<? echo $PLZ;?>"> <br>
   
 <label class="LabelRegistrieren"><font class="text3"><b>&nbsp;&nbsp;&nbsp;Ort:</b></font></label> 
   <input name="Ort" type="text" size="50" id="Ort" class="RegistrierenForm" value="<? echo $Ort;?>"> <br>
   
   <br>
   <font face="Arial,Helvetica,Geneva,sans-serif" color="black" size="1">
   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;* Das Ausfüllen der Lieferanschrift ist Freiwillig.
   </font>
   </fieldset>
   
   // Und der Rest vom Formular halt noch...

Puuh... habe versucht einiges zu kürzen - was mir nur bei dem Formular zum Registrieren möglich war.

Hoffe, dass es nicht zu viel Code ist, aber das sind leider nunmal meine beiden Formulare mit PHP-Code.

Um mein Problem vielleicht besser zu verstehen, habe ich das ganze mal eben auf den Webspace geladen.
http://www.pc-ag.net/Registrieren.php

Vielleicht kann mir ja jemand helfen :)
Danke

Gruss
Commi
 
Zuletzt bearbeitet von einem Moderator:
Heyaaa, ich weiss zwar nicht so wirklich warum, aber jetzt gehts *grübel*

Ich will gar nicht weiter hinfummeln, hat mich schon genug Nerven gekostet.

Dank euch trotzdem :)

Gruss
Commi
 
Zurück