PHP - Benutzer bearbeiten

  • Themenstarter Themenstarter patrick1000
  • Beginndatum Beginndatum
P

patrick1000

Hi,
Ich bin derzeit dabei ein CMS zuschreiben nur stoße ich jetzt auf ein Problem wo ich den Fehler einfach nicht finde.

Es lauft derzeit so ab das der Admin aus einer Liste den jeweiligen Benutzer auswählen kann um ihn zubearbeiten per klick auf den Nick wird die ID mitgesendet welche er für das Bearbeiten des Users benötigt.

Nur wenn ich den Benutzer Bearbeite werde ich zwar ohne probleme weitergeleitet und er schreibt mir auch das der Benutzer bearbeitet wurde aber es passiert nichts.

Derzeit schaut mein code so aus

PHP:
$userid = false;

if($_SERVER['REQUEST_METHOD'] == 'POST')
{
    if(isset($_POST['id']) && ctype_digit($_POST['id']))
    {
        $userid = $_POST['id'];
	
		////EINFÜGEN !!
    $username = $_POST['user'];
  	$pass = md5($_POST['password']);
	$vorname = $_POST['vorname'];
	$nachname = $_POST['nachname'];
	$mail = $_POST['mail'];
	$punkte = $_POST['punkte'];
	$klasse = $_POST['klasse'];
	$admin = $_POST['admin'];
	$begr = $_POST['begr'];
	$punktehin = $_POST['punktehin'];
	$aktiv = $_POST['aktiv'];


  

 
	
     $aendern = "UPDATE `users`
	 	Set
			`user` = '$username',
			`vorname` = '$vorname',
			`nachname` = '$nachname',
			`mail` = '$mail',
			`punkte` = '$punkte',
			`klasse` = '$klasse',
			`admin` = '$admin',
			`punktehin` = '$punktehin',
			`begr` = '$begr',
			`pass` = '$pass'	
			`aktiv` = '$aktiv'		

	WHERE `id` = ".$userid;
     $update = mysql_query($aendern);	
	 mysql_error();

	 		header('Location: sichere_seite.php?page=erfolg');

über hilfe würde ich mich freuen

lg
 
Die diese Art von Fragen sehr oft kommt, habe ich mal ein Tutorial geschrieben wie man am besten auf Fehlersuche geht.

PHP MySQL Debug Queries

Geh es doch mal durch und falls du die Lösung nicht findest, poste mal das ausgegebe SQL-Statement ins Forum.
 
Hallo,

versuchs mal mit einem:
mysql_query($aendern) or die('<pre>' . $aendern . "\n\n" . mysql_error());

Also 3t letzte Zeile in deinem Code.

// Edit: Zu langsam :)

Gruß
BK
 
Hast du schon überprüft ob du bis zum mysql_query() kommst? Wäre es möglich das eine der Ifs oben schon fehlschlägt.

//Edit: Zu langsam
 
Danke , funktioniert jetzt,

Ich wollte jetz den Code erweitern dass er kontrolliert ob in den 2 Pass. felder das gleiche steht würde dann bei mir so aussehn



PHP:
$userid = false;
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
    if(isset($_POST['id']) && ctype_digit($_POST['id']))
    {
        $userid = $_POST['id'];
	
		////EINFÜGEN !!
		  
    $username = $_POST['user'];
  	$pass = md5($_POST['pass']);
	$vorname = $_POST['vorname'];
	$nachname = $_POST['nachname'];
	$mail = $_POST['mail'];
	$punkte = $_POST['punkte'];
	$klasse = $_POST['klasse'];
	$admin = $_POST['admin'];
	$begr = $_POST['begr'];
	$punktehin = $_POST['punktehin'];
	$aktiv = $_POST['aktiv'];



  

 
	
     $aendern = "UPDATE `users`
	 	Set
			`user` = '$username',
			`vorname` = '$vorname',
			`nachname` = '$nachname',
			`mail` = '$mail',
			`punkte` = '$punkte',
			`klasse` = '$klasse',
			`admin` = '$admin',
			`punktehin` = '$punktehin',
			`begr` = '$begr',
			`pass` = '$pass',	
			`aktiv` = '$aktiv'		

	WHERE `id` = ".$userid;
     $update = mysql_query($aendern) or die('<pre>' . $aendern . "\n\n" . mysql_error());
	 mysql_error();

	 		header('Location: sichere_seite.php?page=erfolg');

	 
	  }else{
	  
if( $_POST['pass'] != $_POST['pass2'] ) {
    echo '<form action="sichere_seite.php?page=benutzer_bearbeiten" method="post">';
    echo '<p align="center">Die Passw&ouml;rter stimmen nicht &uuml;berein!<br><br>';
    echo '<input type="submit" name="zurueck" value="Zur&uuml;ck"></p>';
    echo '</form>';

	}

nur leider funktioniert dass nicht warum ?
 
Abgesehen davon, dass "funktioniert nicht" keine gute Fehlerbeschreibung ist, müsstest du die if-Abfrage weiter nach oben packen.
 
Zurück