update datensätze fehler

Shooter2k

Erfahrenes Mitglied
Ich weis nicht was hier falsch sein soll ... es ist nach meines erachtens alles richtig. Was meint ihr dazu?

PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<?
include ("verbindung.php");
 $sqlkommando = "SELECT * FROM date_search WHERE nickname ='hans'";
    $sqlanfrage = mysql_query($sqlkommando) or die("Error: " . mysql_error()); 
	
	
	    while($daten = mysql_fetch_array($sqlanfrage))     
	{ 
	$profil=$daten[profil];
	} ?>
<body>
<form name="form1" method="post" action="<? php_self ?>">
  <textarea name="textarea"><? echo $profil ?></textarea>
  <input type="submit" name="Submit" value="Abschicken">
</form>
</body>
</html>
	<?
				
		  if($Submit) {
		  
		  include "verbindung.php";
//echo $kdnr;
$sqlkommando = "SELECT * FROM date_search WHERE nickname ='hans'";
    $sqlanfrage = mysql_query($sqlkommando) or die("Error: " . mysql_error()); 
 
$aendern = "UPDATE date_search Set profil = '$profil' WHERE nickname = 'hans' ";
$update = mysql_query($aendern) or die("Beim Update ist ein Fehler aufgetreten!<br><center><a href='daten.php'><<zurück</a>");

echo "Die Daten wurden erfolgreich aktualisiert !";
}
?>

Danke für jede hilfe
 
mach mal or die (mysql_error()); und sag mir was dabei rauskommt.

Ich vermute profil ist ein mysql secure word.
schreibs einfach mal in ` `
also

PHP:
$aendern = "UPDATE date_search Set `profil` = '".$profil."' WHERE nickname = 'hans' ";
 
hmm das geht leider immer noch nicht auch wenn ich ein komplett anderes wort nehme .. Vieleicht kann jemand mal ein funktionierendes beispiel posten?
 
ich habe die lösung ;)

Hallo ich habe es selber herrausgefunden und Poste einfach mal meine Lösung für ALLE.


######### UPDATE #################


Also 1. Auslesen der Datensätze

PHP:
<?
include ("verbindung.php");

  $sqlkommando = "SELECT * FROM db  WHERE nickname ='$name'";
    $sqlanfrage = mysql_query($sqlkommando) or die("Error: " . mysql_error()); 
	
	
	    while($daten = mysql_fetch_array($sqlanfrage))     
	{ 
                     // Variablenübergabe wichtig ist hier , dass der name text nicht identisch mit dem Spaltennamen ist also setze ich hier eine '2' dahinter.
	$text2=$daten[text];
}
?>
2. Unser Updateformular indem der Text erscheinen soll.

<form name="form1" method="post" action="<? php_self?>">
  <textarea name="text"><? echo $text2;?></textarea>
  <input type="submit" name="update" value="update">
</form>

Das Textfeld heißt 'text' und der inhalt wird mit der variable $text2 übergeben.

3. Jetzt kommen wir zum eigentlichen update.

Erstmal eine Bedinung,damit es nicht ausgeführt wird, wenn nur die Seite aufgerufen wird, sonder erst wenn ich den 'Update' Button gedruckt habe !
In unseren Formular steht als Button name 'update'. Darum auch :
PHP:
if($update) {


include "verbindung.php";

	
 $sqlkommando = "SELECT * FROM db";
 $sqlanfrage = mysql_query($sqlkommando) or die "Fehler"); 
 
 $aendern = "UPDATE db Set text = '$text'  WHERE nickname = '$name'";
$update = mysql_query($aendern) or die("Fehler");
	
 	
			


}
?>


FERTIG ;) mfg Henry
 
Zurück