Hi an alle
Ich habe eine Userdatenbank und habe das Problem, welches ich noch nie gehabt habe und ich nicht kenne, dass beim updaten der Daten nicht nur die angegebenen Daten sondern alle ersetzt werden, obwohl nicht alle angegeben wurden.
Folgender Massen ist die Datenabnk 'user' aufgebaut:
Folgendermassen mein aktueller Code, wo der User seine Daten ändern kann:
Laut der Seite werden nur die Daten
geändert, das heisst ja eigentlich, die restlichen Daten bleiben so wie sie in der Datenbank stehen. Aber bei mir werden alle ersetzt, also die die nicht im Formular inbegriffen sind, werden leer geändert.
Ich habe keinen Plan warum und woher das kommt.
Ich hoffe jemand kann mir helfen
MfG BigSanch
Ich habe eine Userdatenbank und habe das Problem, welches ich noch nie gehabt habe und ich nicht kenne, dass beim updaten der Daten nicht nur die angegebenen Daten sondern alle ersetzt werden, obwohl nicht alle angegeben wurden.
Folgender Massen ist die Datenabnk 'user' aufgebaut:
Code:
vorname
nachname
geburtstag
strasse
nummer
plz
ort
status
aktiv
email
icq
msn
PHP:
<?
if(isset($_POST[registration])){
include ("db/userdb.php");
$editid = $_POST["editid"];
$sqledit = "UPDATE users SET
vorname='".$_POST["vn"]."',
nachname='".$_POST["nn"]."',
strasse='".$_POST["str"]."',
nr='".$_POST["nr"]."',
plz='".$_POST["plz"]."',
ort='".$_POST["ort"]."',
geburtstag='".$_POST["geb"]."'
WHERE (id = '".$editid."')";
mysql_query($sqledit) or die ("MySQL Error: <b>".mysql_error()."</b>");
echo "<center>Daten erfolgreich geändert</center>";
exit;
} else {
include ("db/userdb.php");
$adid = $_GET["adid"];
if (mysql_num_rows ($editresult) > 0){
$edit = mysql_fetch_array ($editresult);
$id = $edit["id"];
$nn = $edit["nachname"];
$vn = $edit["vorname"];
$str = $edit["strasse"];
$nr = $edit["nr"];
$plz = $edit["plz"];
$ort = $edit["ort"];
$geb = $edit["geburtstag"];
}
echo '
<form action="edit.php" enctype="multipart/form-data" method="post" id="edituser">
<input type="hidden" name="registration" value="1" />
<input type="hidden" name="editid" value="'.$id.'" />
<fieldset>
<table style="text-align:right; font-size:12">
<tr align="left">
<td>Vorname*</td>
<td><input id="inpsmall" type="text" name="vn" size="30" value="'.$vn.'" /></td>
<td> </td>
<td>Nachnme*</td>
<td><input id="inpsmall" type="text" name="nn" size="30" value="'.$nn.'" /></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>Strasse*</td>
<td><input id="inpsmall" type="text" name="strasse" size="40" value="'.$str.'" /></td>
<td>Nr*</td>
<td><input id="inpsmall" type="text" name="nr" size="5" value="'.$nr.'" /></td>
</tr>
<tr>
<td>Ort*</td>
<td><input id="inpsmall" type="text" name="ort" size="40" value="'.$ort.'" /></td>
<td>Plz*</td>
<td><input id="inpsmall" type="text" name="plz" size="5" value="'.$plz.'" /></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>Geburtstag* (d/m/y)</td>
<td colspan="3"><input id="inpsmall" type="text" name="geb" size="4" value="'.$geb.'" /></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td colspan="3"><input id="button" type="submit" name="submit" value="ändern" /></td>
</tr>
</table>
</fieldset>
</form>
';
}
?>
Code:
vorname
nachname
geburtstag
strasse
nummer
plz
ort
Ich habe keinen Plan warum und woher das kommt.
Ich hoffe jemand kann mir helfen
MfG BigSanch