Hallo,
[code lang=php]<?php session_start();
include("dbanbindung.php");
error_reporting(E_ALL);
das ist zum Üben und beim Entwickeln gut, das folgende Umkopieren nicht gut - und wie Chris Dir bereits mitgeteilt hat, prüfst Du nicht, ob es diese Einträge im Array $_POST überhaupt gibt.
$db_ben = $_POST["name"];
wozu speicherst Du den Inhalt dieses Arrayeintrages in einer Variablen, nur um
$db_pword = $_POST["pass"];
sie in der folgenden Zeile wieder zu überschreiben?
$db_pword = md5($db_pass);
Vermutlich mit einer Variablen, die es überhaupt nicht gibt.
$db_vname = $_POST["vor"];
$db_nname = $_POST["nach"];
$db_amail = $_POST["mail"];
$query="UPDATE user SET username = '$db_ben', passwort = '$db_pword', vorname = '$db_vname', nachname = '$db_nname', email = '$db_amail' WHERE username = '".$_SESSION["username"]."';";
Es fehlt die kontextgerechte Behandlung der Daten im SQL-Kontext und selbstverständlich willst Du ein Update auch nur vornehmen, wenn es in $_POST auch entsprechende Daten gibt.
//echo $query;
$ergebnis = mysql_query($query)or die("Kein Ergebnis ".mysql_error());
die() ist keine echte Fehlerbehandlung, aber zu Übungszwecken kann man es mal gelten lassen.
$_SESSION["username"] = $db_ben;
Browser in den Quirksmodus zu schicken, ist nicht die beste Idee.
<html>
<head>
<title>Übung 1</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
Hier weißt Du, wie man überprüft, ob ein bestimmter Arrayeintrag gefüllt ist.
<?php if (!isset($_POST['up'])) { ?>
$_SERVER['PHP_SELF'] solltest Du aus Sicherheitsgründen durch $_SERVER['SCRIPT_NAME'] ersetzen.
<form name="form" method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>?section=item">
wie wäre es mit http://de.selfhtml.org/html/formulare/strukturieren.htm#label@title=label-Elementen für die Beschriftung?
Username:<br>
<input type="text" size="25" name="name"><br>
Passwort:<br>
<input type="password" size="25" name="pass"><br>
Für mich sieht alles richtig aus!!
Für mich nicht!
Freundliche Grüße
Vinzenz