Ik ben sinds een paar dagen aan het rommelen met databases, maar nu krijg ik plotseling de volgende
error:
"Error: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens"
Wat houdt dit in en wat doe ik verkeerd?
Alvast bedankt voor jullie hulp!
Met vriendelijke groet,
Miquel
<form method="post" name="toevoegform" id="toevoegform">
KlantID*: <input type="text" name="klantid" id="klantid" size="3" placeholder="" required></br>
Achternaam*: <input type="text" name="achternaam" id="achternaam" size="3" placeholder="" required></br>
Tussenvoegsel: <input type="text" name="tussenvoegsel" id="tussenvoegsel" size="3" placeholder=""></br>
Voornaam*: <input type="text" name="voornaam" id="voornaam" size="3" placeholder="" required></br>
Telefoon: <input type="text" name="telefoon" id="telefoon" size="3" placeholder=""></br>
Emailadres: <input type="text" name="emailadres" id="emailadres" size="3" placeholder=""></br>
<input type="submit" value="Go" name="submit"/>
</form>
<?php
include "connectpdo.php";
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// prepare sql and bind parameters
$stmt = $conn->prepare("INSERT INTO klantgegevens (KlantID, Achternaam, Tussenvoegsel, Voornaam, Telefoon, Emailadres)
VALUES (:KlantID, :Achternaam, :Tussenvoegsel, :Voornaam, :Telefoon, :Emailadres)");
$stmt->bindParam(':KlantID', $klantid);
$stmt->bindParam(':Tussenvoegsel', $tussenvoegsel);
$stmt->bindParam(':Voornaam', $voornaam);
$stmt->bindParam(':Telefoon', $telefoon);
$stmt->bindParam(':Emailadres', $emailadres);
// insert a row
$klantid = $_POST['klantid'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$voornaam = $_POST['voornaam'];
$telefoon = $_POST['telefoon'];
$emailadres = $_POST['emailadres'];
$stmt->execute();
echo "Nieuwe reccord toegevoegd";
}
catch(PDOException $e)
{
echo "Error: " . $e->getMessage();
}
$conn = null;
?>