hallo,

Ik heb een tabel waarbij ik data uit een database laat zien. De bedoeling is dat je de data kan wijzigen.
Als je dan op de link/button wijzig klik dan zal de wijzigingen opgeslagen moeten worden in de database.
Maar de wijzigingen worden niet in de database opgeslagen. En als de query is uigevoerd dan zie je de melding data met succes gewijzigd; dit zie ik ook niet op het scherm.

Ik krijg geen foutmeldingen.

mijn vraag is: hoe kunnen de wijzigingen opgeslagen worden in de database?

de index.php is:

<body>
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);

// 1. Verbinding maken met database:
require_once ("connect.php");
// 2. Query opstellen
$query = "SELECT * FROM users ";
// 3. Query uitvoeren
$result = mysqli_query($conn, $query)    or    die(mysqli_error());
?>
<?php
// 4. Resultaat verwerken
echo "<table border='1'>";
echo "<tr>";
      echo "<th>id</th>";
      echo "<th>voornaam</th>";
      echo "<th>achternaam</th>";
      echo "<th>woonplaats</th>";
      echo "<th>username</th>";
      echo "<th>E-mail</th>";
      echo "<th>Pass</th>";
    echo "</tr>";

while ($record = mysqli_fetch_assoc($result)) {
		
    $id = $record['user_id'];
    $voornaam = $record['first_name'];
    $achternaam = $record['last_name'];
    $woonplaats = $record['user_city'];
    $username = $record['username'];
    $email = $record['email'];
    $pass = $record['passreset'];
    
    echo "<tr>";
    ?>
    <td><input type="text" name="id"  value="<?php echo $id; ?>"  /></td>
    <td><input type="text" name="voornaam"  value="<?php echo $voornaam; ?>"  /></td>
    <td><input type="text" name="achternaam"  value="<?php echo $achternaam; ?>"  /></td>
    <td><input type="text" name="woonplaats"  value="<?php echo $woonplaats; ?>"  /></td>
    <td><input type="text" name="username"  value="<?php echo $username; ?>"  /></td>
    <td><input type="text" name="email"  value="<?php echo $email; ?>"  /></td>
    <td><textarea name="beschrijving" ><?php echo $pass; ?></textarea></td>

    <?php echo "<a href='wijzig.php?id=$id' name='update'>Wijzig</a>"; ?>
    <?php
    echo "</tr>";
}
echo "</table>";
mysqli_close($conn);
?>
</body>


wijzig.php is:

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
	//connectie maken
if(isset( $_GET['update'])){
include 'connect.php';

 //sql voor wijzigen
$sql = "UPDATE users SET first_name = ?, last_name = ?, user_city = ?, username = ?, email = ? , passreset = ? WHERE user_id = ?  ";
$stmt = $conn->prepare($sql);
$stmt->bind_param("ssssssi", $voor_naam, $achter_naam, $woonplaats, $username, $email, $pass, $id);

//variable aanmaken voor invoegen
 //if (isset($_GET['id']) && isset($_GET['voornaam']) && isset($_GET['achternaam']) && isset($_GET['woonplaats']) && isset($_GET['username']) && isset($_GET['email']) && isset($//_GET['pass'])){
  $id = $_GET['id'];
 $voor_naam = $_GET['voornaam'];
 $achter_naam = $_GET['achternaam'];
 $woonplaats = $_GET['woonplaats'];
 $username = $_GET['username'];
 $email = $_GET['email'];
 $pass = $_GET['pass'];
 
 echo $voor_naam;
//}

 $stmt->execute();

if (! $sql) {
    echo "Data niet gewijzigd";
} else{
    echo "<h3>Data met succes gewijzigd</h3>";
    }
//sluiten    
$stmt->close();
mysqli_close($conn);
}
?>
<a href="index.php">ga terug</a>
<form action="wijzig.php?id=<?php echo $_GET['user_id'] ?>" method="POST">

Moet worden:

<form action="wijzig.php?id=<?php echo $_GET['user_id']; ?>" method="POST">
Jesper Schroder op 14/04/2017 12:03:49

<form action="wijzig.php?id=<?php echo $_GET['user_id'] ?>" method="POST">

Moet worden:

<form action="wijzig.php?id=<?php echo $_GET['user_id']; ?>" method="POST">


Zoek de verschillen?

Jesper Schroder op 14/04/2017 12:03:49

<form action="wijzig.php?id=<?php echo $_GET['user_id'] ?>" method="POST">

Moet worden:

<form action="wijzig.php?id=<?php echo $_GET['user_id']; ?>" method="POST">



Heb je dat getest? Je laatste regel in een php blok hoeft niet perse gevolgd te worden door ;.
Ben van Velzen op 14/04/2017 12:34:48

[quote="Jesper Schroder op 14/04/2017 12:03:49"]
<form action="wijzig.php?id=<?php echo $_GET['user_id'] ?>" method="POST">

Moet worden:

<form action="wijzig.php?id=<?php echo $_GET['user_id']; ?>" method="POST">



Heb je dat getest? Je laatste regel in een php blok hoeft niet perse gevolgd te worden door ;.

[/quote]

Oh, sorry. Ik dacht dat je bij elke regel die je afsluit een ; moest plaatsen. Mijn excuses.
Ah nu zie ik hem wel.
Verder hebben we ook mooie [code] en [/code]-tags voor om de scripts heen.

Reageren