2016-05-27 41 views
0

Ich versuche, einige Dateien in der Datenbank mithilfe eines Formulars zu aktualisieren, und aus irgendeinem Grund wird die Seite nur aktualisiert, ohne etwas zu tun. Hier ist der Code, den ich verwendet:Felder können nicht von db aktualisiert werden

<?php 

$id = $_GET["id"]; 
$select = "SELECT * FROM blog_members WHERE memberID = '$id'"; 
$result = mysqli_query($link, $select); 
$row=mysqli_fetch_assoc($result); 
$id2=$row['memberID']; 
$username=$row['username']; 
$password = $row['password']; 
$email = $row['email']; 
?> 

<form id="form" action="#" method="post"> 
<br><table cellspacing='0' cellpadding='0'> 
<tr><td>Username:</td> 
<td><input name="username" type="text" id="username" placeholder="<?php echo $username; ?>" size="25" /></td></tr> 
<tr><td>Password:</td> 
<td><input name="password" type="text" id="password" placeholder="<?php echo $password; ?>" size="25" /></td></tr> 
<tr><td>Email:</td> 
<td><input name="email" type="text" id="email" placeholder="<?php echo $email; ?>" size="25" /></td></tr> 
</table> 
<br> 
<input type="submit" name="Edit" value="Save" /> 
</center></form> 

<?php 

if(isset($POST['Edit'])){ 
$username2 = $_POST['username']; 
$password2 = $_POST['password']; 
$email2 = $_POST['email']; 

$edit = mysqli_query($link, "UPDATE blog_members SET username='$username2',password='$password2',email='$email2' WHERE memberID='$id2'"); 
$result1 = mysqli_query($link,$edit); 

if(!$result){ 
echo mysqli_error($link); 
}else{ 
echo "Changes have been saved successfully!"; 
echo "<meta http-equiv=\"refresh\" content=\"2;URL=view-users.php\">"; 
} 

} 
?> 

Ich denke, die Abfrage $ bearbeiten es nicht richtig funktioniert, da die Seite gerade aufgefrischt wird und die Felder von der databse werden nicht aktualisiert. Ich fühle mich, als würde ich etwas vermissen. Irgendwelche Vorschläge?

+0

warum zwei Zeit Update-Abfrage? –

+0

Es gibt keine Aktion im Formular? – Thorin

+0

Möglicherweise wird die ID nach dem Senden zurückgesetzt. –

Antwort

0

Auch unter Code ändern

if(isset($POST['Edit'])){ 

dies mit, $_POST ist richtig Syntax nicht $POST

if(isset($_POST['Edit'])){ 
+0

Danke! Ich wusste, dass ich etwas verpasst hatte, aber ich wusste nicht, was. –

0

Ich habe zwei Dinge ..

  1. Sie die ID verloren, die $id = $_GET["id"]; ist bekommt.
  2. Mysql Update Abfrage zweimal.

Lösung: Post-ID in Form und nutzen Sie den gebuchten ID und es verwenden, eine einzelne Abfrage zu aktualisieren und zu verwenden, zu aktualisieren.

Updates: Ich vermisse die Hauptsache, und das ist $POST, müssen Sie die if(isset($POST['Edit'])) zu if(isset($_POST['Edit'])) ändern.

Lassen Sie mich wissen, wenn Sie mehr Unterstützung von mir benötigen.

+1

Danke für Ihre Hilfe! Ich finde es heraus. :) –

0

Try This ..

<input name="username" type="text" id="username" value="<?php echo $username; ?>" size="25" /> 
<input name="password" type="text" id="username" value="<?php echo $password; ?>" size="25" /> 
<input name="email" type="text" id="email" value="<?php echo $email; ?> " size="25" /> 
Verwandte Themen