Buttonconflikt ?!

Pestilence

Mitglied
Irgendwie werde ich das Gefühl nicht los das sich in diesem Script die 2 Buttons nicht mögen. Der zweite Button reagiert überhaupt nicht (ausser das die Seite neu aufgerufen wird) Jedoch sollte er einen DB Eintrag ändern und danach auf eine andere Seite weiterleiten. Nur scheint es so als würde er das komplett überspringen.

Könnte sich das vielleicht jemand anschauen?

PHP:
			$dbanfrage = "SELECT `UserName`, `UserID` from `users` ORDER BY `UserID` ASC";
			$result = mysql_db_query($dbname, $dbanfrage, $dbverbindung) OR die(mysql_error());
			?>
			<form name="form" method="POST" action="I_MDA.php"> 
            Member aussuchen:<br> 
            <select name="member"> 
            <? 
            while ($row = mysql_fetch_array($result)) 
            { 

                 ?> 
                     <option><?=$row['UserName']?></option> 
                 <? 
                 
            } 
            ?> 
            </select> 
            <input type="submit" name="Submit2" value="ok"> 
            </form><br> 
			<?
			
			
				if (isset($_POST['Submit2']))
				{
				$ID = $_POST['member'];
				}
				
						
						$dbanfrage = "SELECT UserID, RealName, Admin, UserName, Rang, UserSquad, UserPass, UserSession, UserMail, ICQ, UserUrl, UserHome, UserInter from users WHERE UserName = '".$_POST['member']."'";
						$result2 = mysql_db_query($dbname, $dbanfrage, $dbverbindung) OR die(mysql_error());
						while ($ausgabe = mysql_fetch_array($result2))
						{
						  ?>

//Hier würde nun ein unbedeutendes Formular kommen




                            <td width="124">Interessen:</td>
                            <td width="216"><?=$ausgabe['UserInter']?></td>
                          	<td width="100"><input name="UserInter" type="text" size="15"></td>
						  </tr>
                        </table>
						<hr width="435" noshade>
						<input type="submit" name="Submit3" value="speichern">
						
						
						<?
						
						//Adminfunktion+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
<?
						if (isset($_POST['Submit3']))
						
						{

						$aendern = "UPDATE `users` Set 
						 Admin = '".$Admin."',
						 UserName = '".$_POST['UserName']."',
                         Rang = '".$_POST['Rang']."',
                         UserSquad = '".$_POST['UserSquad']."',
                         RealName = '".$_POST['RealName']."',
                         UserHome = '".$_POST['UserHome']."',
                         ICQ = '".$_POST['ICQ']."',
                         UserMail = '".$_POST['UserMail']."',
					     UserUrl = '".$_POST['UserUrl']."',
                         UserInter = '".$_POST['UserInter']."' WHERE `UserName` = '".$_POST['member']."'";

						 $update = mysql_query($aendern) OR die (mysql_error());
	
                         //Umleitung der Site für einen refresh
						 echo '<meta http-equiv="refresh" content="0; URL=http://www.pestisportal.de/dsi/I_6.php">';	
						}
						?>
 
Zuletzt bearbeitet:
Uppps Sorry das war in den vermeidlichen "unwichtigen" Teil :-(

Ich habe ihn ebenfalls nochmal oben eingefügt.

PHP:
                            <td width="124">Interessen:</td>
                            <td width="216"><?=$ausgabe['UserInter']?></td>
                          	<td width="100"><input name="UserInter" type="text" size="15"></td>
						  </tr>
                        </table>
						<hr width="435" noshade>
						<input type="submit" name="Submit3" value="speichern">
						
						
						<?
						
						//Adminfunktion+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
Hmm, nun kommt die Umleitung (d.H. das er das Update eigentlich machen müsste)
jedoch passiert leider nichts mehr in der DB und er springt nach dem "speichern"
immer wieder zum ersten Datensatz.

Naja hier nochmal das ganze, in der Hoffnung das da jemand den Fehler sieht.

PHP:
include 'dbcon_u.php';

			$dbanfrage = "SELECT `UserName`, `UserID` from `users` ORDER BY `UserID` ASC";
			$result = mysql_db_query($dbname, $dbanfrage, $dbverbindung) OR die(mysql_error());
			?>
			<form name="form2" method="POST" action="I_MDA.php"> 
            Member aussuchen:<br> 
            <select name="member"> 
            <? 
            while ($row = mysql_fetch_array($result)) 
            { 

                 ?> 
                     <option><?=$row['UserName']?></option> 
                 <? 
                 
            } 
            ?> 
            </select> 
            <input type="submit" name="Submit2" value="ok"> 
            <br> 
			<?
			
			
				if (isset($_POST['Submit2']))
				{
				$ID = $_POST['member'];
				}
				
						
						$dbanfrage = "SELECT UserID, RealName, Admin, UserName, Rang, UserSquad, UserPass, UserSession, UserMail, ICQ, UserUrl, UserHome, UserInter from users WHERE UserName = '".$_POST['member']."'";
						$result2 = mysql_db_query($dbname, $dbanfrage, $dbverbindung) OR die(mysql_error());
						while ($ausgabe = mysql_fetch_array($result2))
						{
						  ?>
						  <form name="form1" method="POST" action="I_MDA.php">
						  <div align="left">
                          <table width="435" border="0" align="center" cellpadding="0" cellspacing="0">
  							<tr>
    						<td width="73">MemberNR:</td>
    						<td width="262"><?=$ausgabe['UserID']?></td>
  							
							</tr>
						</table>
						</div>
						<hr width="435" noshade>
						<table width="440" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                           <td width="124">Nickname:</td>
                           <td width="216"><?=$ausgabe['UserName']?></td>
                          	<td width="100"><input name="UserName" type="text" size="15"></td>
						  </tr>
                        </table>
						<table width="440" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td width="124">Rang:</td>
                            <td width="216"><?=$ausgabe['Rang']?></td>
                          	<td> 
							            <div align="left">
                    		              <select name="Rang">
                    		                <option>Tryout</option>
                    		                <option>Member</option>
                    		                <option>Squadleader</option>
                    		                <option>Clanleader</option>
											<option>Siteadmin</option>
                    		              </select>
							</td>
						  </tr>
                       </table>
						<table width="440" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td width="124">Squad:</td>
                            <td width="216"><?=$ausgabe['UserSquad']?></td>
                          	<td width="100"><input name="UserSquad" type="text" size="15"></td>
						  </tr>
                        </table>
						<hr width="435" noshade>
						<table width="440" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td width="124">Realname:</td>
                            <td width="216"><?=$ausgabe['RealName']?></td>
                          	<td width="100"><input name="RealName" type="text" size="15"></td>
						  </tr>
                        </table>
						<table width="440" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td width="124">Herkunft:</td>
                            <td width="216"><?=$ausgabe['UserHome']?></td>
                          	<td width="100"><input name="UserHome" type="text" size="15"></td>
						  </tr>
                        </table>
						<table width="440" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td width="124">ICQ:</td>
                            <td width="216"><?=$ausgabe['ICQ']?></td>
                          	<td width="100"><input name="ICQ" type="text" size="15"></td>
						  </tr>
                        </table>
						<table width="440" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td width="124">eMail:</td>
                            <td width="216"><div align="center"></div>
                              <?=$ausgabe['UserMail']?></td>
                          	<td width="100"><input name="UserMail" type="text" size="15"></td>
						  </tr>
                        </table>
						<table width="440" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td width="124">Homepage:</td>
                            <td width="216"><a href="<?=$ausgabe['UserUrl']?>">Homepage des Users</a></td>
                          	<td width="100"><input name="UserUrl" type="text" size="15"></td>
						  </tr>
                        </table>
						<table width="440" border="0" cellpadding="0" cellspacing="0">
                          <tr>
                            <td width="124">Interessen:</td>
                            <td width="216"><?=$ausgabe['UserInter']?></td>
                          	<td width="100"><input name="UserInter" type="text" size="15"></td>
						  </tr>
                        </table>
						<hr width="435" noshade>
						<input type="submit" name="Submit3" value="speichern">
						
						
						<?
						
						//Adminfunktion+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

															
						if (isset($_POST['Submit3']))
						
						{
						if ($_POST['UserName'] == "")
						{
						$_POST['UserName'] = $ausgabe['UserName'];
						}
						
						if ($_POST['Rang'] == "")
						{
						$_POST['Rang'] = $ausgabe['Rang'];
						}						
                        
						if ($_POST['UserSquad'] == "")
						{
						$_POST['UserSquad'] = $ausgabe['UserSquad'];
						}						
						
                        if ($_POST['RealName'] == "")
						{
						$_POST['RealName'] = $ausgabe['RealName'];
						}
						
                        if ($_POST['UserHome'] == "")
						{
						$_POST['UserHome'] = $ausgabe['UserHome'];
						}
                        
						if ($_POST['ICQ'] == "")
						{
						$_POST['ICQ'] = $ausgabe['ICQ'];
						}						
                        
						if ($_POST['UserMail'] == "")
						{
						$_POST['UserMail'] = $ausgabe['UserMail'];
						}
                        
						if ($_POST['UserUrl'] == "")
						{
						$_POST['UserUrl'] = $ausgabe['UserUrl'];
						}
                        
						if ($_POST['UserInter'] == "")
						{
						$_POST['UserInter'] = $ausgabe['UserInter'];
						}		
						
						if ($_POST['Rang'] == "Clanleader")
						{
						$Admin = "1";
						}
						elseif ($_POST['Rang'] == "Siteadmin")
						{
						$Admin = "1";
						}
						else
						{
						$Admin = "0";
						}
						$aendern = "UPDATE `users` Set 
						 Admin = '".$Admin."',
						 UserName = '".$_POST['UserName']."',
                         Rang = '".$_POST['Rang']."',
                         UserSquad = '".$_POST['UserSquad']."',
                         RealName = '".$_POST['RealName']."',
                         UserHome = '".$_POST['UserHome']."',
                         ICQ = '".$_POST['ICQ']."',
                         UserMail = '".$_POST['UserMail']."',
					     UserUrl = '".$_POST['UserUrl']."',
                         UserInter = '".$_POST['UserInter']."' WHERE `UserName` = '".$ID."'";

						 $update = mysql_query($aendern) OR die (mysql_error());
	
                         //Umleitung der Site für einen refresh
						 //echo '<meta http-equiv="refresh" content="0; URL=http://www.pestisportal.de/dsi/I_6.php">';	
						}
						?>
						</form>
						<?
 
Die Variable $ID setzt du bei Button2...die ist somit bei Button3 nicht gesetzt ....womit keine Datensätze gefunden werden, welche geupdatet werden können.
 
Args das es immer an soetwas scheitern muss.
Vielen Dank, das schreiben klappt schonmal.

Jetzt muss ich nur noch raus bekommen warum,
er immer nur den ersten Datensatz erneuert.
(Also der oben aus dem Dropdown ausgewählt wurde und
auch angezeigt wird. Nur ernauert er die Seite und springt
fast unmittelbar wieder in den ersten Datensatz)
 
Also Hier:
PHP:
$dbanfrage = "SELECT `UserName` FROM `users`"; 
            $result = mysql_query($dbanfrage) or die(mysql_error()); 
            ?> 
            <form name="form2" method="POST" action="I_MDA.php"> 
            Member aussuchen:<br> 
            <select name="member"> 
            <? 
            while ($row = mysql_fetch_assoc($result)) 
            { 

                 ?> 
                     <option><?=$row['UserName']?></option> 
                 <? 
                 
            } 
            ?> 
            </select><br> 
            <input type="submit" name="Submit2" value="ok"> 
            </form> 
            <br>

Wird ein Listenfeld erstellt, dass nach den drücken auf "OK" einen Datensatz aus der Datenbank anzeigt (dies geschieht auch).

Dann wird das Formular mit den Daten aus der Datenbank angezeigt, und neben den Daten ist ein Eingabefeld das die jeweilige Variable davor updaten soll.

Das sieht für jeden Wert so aus:

PHP:
<table width="440" border="0" cellpadding="0" cellspacing="0"> 
                          <tr> 
                           <td width="124">Nickname:</td> 
                           <td width="216"><?=$ausgabe['UserName']?></td> 
                              <td width="100"><input name="UserName" type="text" size="15"></td> 
                          </tr> 
                        </table>

Das Update des Datensatzes soll demnach auf Knopfdruck von diesen
Buttonausgefüht werden.:

PHP:
                        if (isset($_POST['Submit3'])) 
                         
                        { 
                        if ($_POST['UserName'] == "") 
                        { 
                        $_POST['UserName'] = $ausgabe['UserName']; 
                        } 
                         
                        if ($_POST['Rang'] == "") 
                        { 
                        $_POST['Rang'] = $ausgabe['Rang']; 
                        }                         
                         
                        if ($_POST['UserSquad'] == "") 
                        { 
                        $_POST['UserSquad'] = $ausgabe['UserSquad']; 
                        }                         
                         
                        if ($_POST['RealName'] == "") 
                        { 
                        $_POST['RealName'] = $ausgabe['RealName']; 
                        } 
                         
                        if ($_POST['UserHome'] == "") 
                        { 
                        $_POST['UserHome'] = $ausgabe['UserHome']; 
                        } 
                         
                        if ($_POST['ICQ'] == "") 
                        { 
                        $_POST['ICQ'] = $ausgabe['ICQ']; 
                        }                         
                         
                        if ($_POST['UserMail'] == "") 
                        { 
                        $_POST['UserMail'] = $ausgabe['UserMail']; 
                        } 
                         
                        if ($_POST['UserUrl'] == "") 
                        { 
                        $_POST['UserUrl'] = $ausgabe['UserUrl']; 
                        } 
                         
                        if ($_POST['UserInter'] == "") 
                        { 
                        $_POST['UserInter'] = $ausgabe['UserInter']; 
                        }         
                         
                        if ($_POST['Rang'] == "Clanleader") 
                        { 
                        $Admin = "1"; 
                        } 
                        elseif ($_POST['Rang'] == "Siteadmin") 
                        { 
                        $Admin = "1"; 
                        } 
                        else 
                        { 
                        $Admin = "0"; 
                        } 
                        $aendern = "UPDATE `users` Set 
                         Admin = '".$Admin."', 
                         UserName = '".$_POST['UserName']."', 
                         Rang = '".$_POST['Rang']."', 
                         UserSquad = '".$_POST['UserSquad']."', 
                         RealName = '".$_POST['RealName']."', 
                         UserHome = '".$_POST['UserHome']."', 
                         ICQ = '".$_POST['ICQ']."', 
                         UserMail = '".$_POST['UserMail']."', 
                         UserUrl = '".$_POST['UserUrl']."', 
                         UserInter = '".$_POST['UserInter']."' WHERE `UserName` = '".$ID."'"; 

                         $update = mysql_query($aendern) OR die (mysql_error()); 
     
                         //Umleitung der Site für einen refresh 
                         //echo '<meta http-equiv="refresh" content="0; URL=http://www.pestisportal.de/dsi/I_6.php">';     
                        } 
                        ?>

Nur passiert nach der Buttonbetätigung nichts anderes als
das alles auf den ersten Datensatz im Listenfeld springt.
So wie es aussieht, momentan auch nur in den ersten Datensatz speichert.

Um sich ein Bild davon zu machen schaut bitte hier:LINK
Login: Testacc
Pass: 12345
Nach der Anmeldung noch mal den LINK drücken umd die betreffende Seite zu sehen.
(Bitte beachtet das die Änderungen bis jetzt nur im ersten Datensatz "Pestilence" getätigt werden)
 
Zuletzt bearbeitet:
Ahso....

da die inputs alle den selben Namen tragen, wird nur das erste davon übertragen.

Hänge an den Namen eckige Klammern ran...
Code:
<input name="UserName[]" type="text" size="15">

Und es werden alle übertragen....
ansprechen kannst du sie dabei als Array.
 
Also nur duch das anfügen von [] soll es sich schon erledigen?

Weil diese Felder <input name="UserName" type="text" size="15">
im Formular eigentlich nicht den selben namen haben.

Edit:

Ich hatte die Idee eine Variable bei der Auswahl im Listenfeld zu definieren,
(z.B. I_MDA.php?ID3=)
die dann beim Anzeigen das Listenfeld auf den Namen setzt (also auch beim speichern).
Oder denke ich da in eine falsche Richtung ?
 
Zuletzt bearbeitet:
Zurück