Benutzerdaten ändern?

trc120

Gesperrt
Hallo zusammen

Ich versuche seit Tagen, die Benutzerdaten zu ändern, bin schon am verzweifeln.
Kann mir jemand in kurzen Worten sagen wie ich das hinbekomme ?

zb. 1.) auslesen der daten,
2.) update der daten, usw.

damit ich einmal die einzelnen Schritte weis um die Daten aus der DB in ein Formular zu bringe, sie ändere kann und sie wieder in die DB speichere.

Mit den Tutorials die ich gefunden habe, ist man als Anfänger am verzweifeln.

Danke schon mal im voraus.
 
Zuletzt bearbeitet:
Sorry habe anscheinend ein Großes Brett von meinem Kopf.
Komme überhaut nicht weiter.
habe jetzt einen : Parse error:

PHP:
<?php
 session_start();

// Prüfen, ob Benutzer korekt eingeloggt ist,
// durch Prüfen ob Session-Variable existiert

 if (isset ($_SESSION['berechtigt']) == false)
 {
?>
  <meta http-equiv="refresh" content="0;URL=index.php?seite=login_inc"></meta>
<?php
  die();
}

 $db = new MySQLi("localhost","root","","trc")
      or die('Derzeit kann keine Verbindung zur Datenbank hergestellt werden'); 
 
		  
		  // Ändern eines oder mehrerer Datensätze
// *************************************     
if (isset($_POST['senden']))
  {
    $anfrageart = "INSERT INTO 'userdaten' VALUES('','vname','nname','benutzername','anschrift','plz','ort','telefon','icq','home','email')"; 

					 
    $ergebnis = $db -> query($anfrageart); // Senden an Dabenbank

     if ($ergebnis -> affected_rows > 0)
      {
        echo "Neue Daten wurde gespeichert!<br>";
       $tabellen_id = $db -> insert_id; // Aulesen des neu erstellten Autowertes.
      }
       else
      {
       echo "Datensatz konnte nicht eingetragen werden!<br>";
      }	 
     } // ende if klammer send button
/***************************************************************************************************************/         

if (isset($_POST['update']))
  {
        $anfrageart = "UPDATE userdaten SET 
		                      vname       = '$vname',
							  nname       = '$nname',
							  benutzername= '$benutzername',
							  anschrift   = '$anschrift',
							  plz         = '$plz',
							  ort         = '$ort',
							  telefon     = '$telefon',
							  icq         = '$icq',
							  home        = '$home',
							  email       = '$email' WHERE benutzername = '$benutzername'";							  

   $ergebnis -> $db -> query($anfrageart); // Senden an Dabenbank

     if ($ergebnis -> affected_rows > 0)
      {
        echo $ergebnis -> affected_rows." Daten wurden geändert!<br>";
      }
     else
      {
       echo "Keine Datensätze gefunden!<br>";
      }
 
 
  }
			  
	  
 echo "<div class='profil'>";				  
   echo '<form method="post" action="'.$_SERVER['PHP_SELF'].'">'; 
      echo  '<h3>Profil ändern :</h3>';
	   echo '<table width=100%>';		  
 
       echo   '<tr><td width=20%>Vorname:</td><td><input type="text" name="vname" size="50" value="'.$ergebnis['vname'].'"><br></td></tr>';   // Parse Error
       echo   '<tr><td>Nachname:</td><td><input type="text" name="nname" size="50" value="'.$ergebnis['nname'].'"><br></td></tr>';
       echo   '<tr><td>Benutzername:</td><td><input type="text" name="benutzername" size="50" value="'.$ergebnis['benutzername'].'"><br></td></tr>';
       echo   '<tr><td>Anschrift:</td><td><input type="text" name="anschrift" size="50" value="'.$ergebnis['anschrift'].'"><br></td></tr>';
       echo   '<tr><td>PLZ:</td><td><input type="text" name="plz" size="50" value="'.$ergebnis['plz'].'"><br></td></tr>';
       echo   '<tr><td>Ort:</td><td><input type="text" name="ort" size="50" value="'.$ergebnis['ort'].'"><br></td></tr>';
       echo   '<tr><td>Telefon:</td><td><input type="text" name="telefon" size="50" value="'.$ergebnis['telefon'].'"><br></td></tr>'; 
       echo   '<tr><td>ICQ:</td><td><input type="text" name="icq" size="50" value="'.$ergebnis['icq'].'"<br></td></tr>';
       echo   '<tr><td>Homepage:</td><td><input type="text" name="home" size="50" value="'.$ergebnis['home'].'"><br></td></tr>';
       echo   '<tr><td>E-Mail:</td><td><input type="text" name="email" size="50" value="'.$ergebnis['email'].'"><br></td></tr>';
       echo   '<input type="hidden" name="benutzername" value="'.$_GET['edit'].'"><br>';
       echo   '<tr><td></td><td><input type="submit" name="senden" value="Senden">&nbsp;&nbsp;<input type=button value="Zur&uuml;ck" onClick="history.back()"></td></tr>';

   echo '</table>';   
  echo '</form>';
echo '</div>';	
  
	  

	  
	  
	  
	  
	  $db -> close(); //  datenbank geschlossen.

?>
 
Welchen und wo genau? Dir wird dazu auch immer eine Zeilenangabe gegeben. Dort solltest du nachschauen. Wenn du dann noch die Fehlernachricht ins Deutsche übersetzt, sagt dir PHP genau was falsch ist und implizit auch was du machen sollst.
 
Fehler sind jetzt behoben, Formular wird angezeigt, man kann auch eingaben machen, jedoch wird nichts in die DB geschrieben oder verändert wenn ich den button klicke.
 
hallo

Also ich komme mit diesem Benutzerdaten ändern Script überhaupt nicht weiter.
Ich muss feststellen das wir in unseren Kurs nichts gelernt haben.
Ich habe das Script jetzt wie folgt geändert.

PHP:
<?php
 session_start();

// Prüfen, ob Benutzer korekt eingeloggt ist,
// durch Prüfen ob Session-Variable existiert

 if (isset ($_SESSION['berechtigt']) == false)
 {
?>
  <meta http-equiv="refresh" content="0;URL=index.php?seite=login_inc"></meta>
<?php
  
}

 $db = new MySQLi("localhost","root","","trc")
      or die('Derzeit kann keine Verbindung zur Datenbank hergestellt werden'); 
	  
if (isset($_POST['senden']) == true)
{	  

/***************************************************************************************************************/ 
        

        $anfrageart = "UPDATE userdaten SET 
		                      vname       = 'vname',
							  nname       = 'nname',
							  benutzername= 'benutzername',
							  anschrift   = 'anschrift',
							  plz         = 'plz',
							  ort         = 'ort',
							  telefon     = 'telefon',
							  icq         = 'icq',
							  home        = 'home',
							  email       = 'email' WHERE benutzername = '$benutzername' AND passwort ='$passwort_md5'";							  

   $ergebnis = $db -> query($anfrageart); // Senden an Dabenbank

     if ($db -> affected_rows > 0)
      {
	        echo $ergebnis -> affected_rows." Daten wurden geändert!<br>";
      }
     else
      {
       echo "Keine Datensätze gefunden!<br>";
      }  
	  
}



    
 echo "<div class='profil'>";				  
   echo '<form method="post" action="">'; 
      echo  '<h3>Profil ändern :</h3>';
	   echo '<table width=100%>';		  
 
       echo   '<tr><td width=20%>Vorname:</td><td><input type="text" name="vname" size="50" value=""><br></td></tr>';
       echo   '<tr><td>Nachname:</td><td><input type="text" name="nname" size="50" value=""><br></td></tr>';
       echo   '<tr><td>Benutzername:</td><td><input type="text" name="benutzername" size="50" value=""><br></td></tr>';
       echo   '<tr><td>Anschrift:</td><td><input type="text" name="anschrift" size="50" value=""><br></td></tr>';
       echo   '<tr><td>PLZ:</td><td><input type="text" name="plz" size="50" value=""><br></td></tr>';
       echo   '<tr><td>Ort:</td><td><input type="text" name="ort" size="50" value=""><br></td></tr>';
       echo   '<tr><td>Telefon:</td><td><input type="text" name="telefon" size="50" value=""><br></td></tr>'; 
       echo   '<tr><td>ICQ:</td><td><input type="text" name="icq" size="50" value=""><br></td></tr>';
       echo   '<tr><td>Homepage:</td><td><input type="text" name="home" size="50" value=""><br></td></tr>';
       echo   '<tr><td>E-Mail:</td><td><input type="text" name="email" size="50" value=""><br></td></tr>';
       echo   '<tr><td></td><td><input type="submit" name="senden" value="Ändern">&nbsp;&nbsp;<input type=button value="Zur&uuml;ck" onClick="history.back()"></td></tr>';

   echo '</table>';   
  echo '</form>';
echo '</div>';	
  
  


/***************************************************************************************************************/         


 
	  
	  $db -> close(); //  datenbank geschlossen.

?>

Ich kann zwar daten in das Formular schreiben, jedoch werden die Daten nicht in die DB gespeichert.
 
Das muss ein furchtbar schlechter Kurs gewesen sein:
PHP:
 $anfrageart = "UPDATE userdaten SET 
                              vname       = 'vname',
                              nname       = 'nname',
                              benutzername= 'benutzername',
                              anschrift   = 'anschrift',
                              plz         = 'plz',
                              ort         = 'ort',
                              telefon     = 'telefon',
                              icq         = 'icq',
                              home        = 'home',
                              email       = 'email' WHERE benutzername = '$benutzername' AND passwort ='$passwort_md5'";

Hier zum Beispiel verwendest du die Variablen $benutzername und $passwort_md5, die vorher nicht gesetzt werden. Wenn du mich jetzt fragen möchtest, was man da ändern muss oder was das heißt, dann verlang dein Geld zurück! (falls du etwas bezahlen musstest)
 
Zurück