Hi Leute,
ich bin nun fast fertig mit meiner selbstgeschriebenden Website-Bewertung. Doch nun, kurz bevor ich fertig bin, gibt er mir beim in die Datenbank schreiben einen Error
Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in /write.php on line 33
Hier der Code:
<?php
$aussehen = $_GET['a'];
$uebersicht = $_GET['u'];
$inhalte = $_GET['i'];
$latitude = $_GET['lat'];
$longitude = $_GET['long'];
$nachname = $_POST[nachname];
$vorname = $_POST[vorname];
$mail = $_POST[mail];
$ip = $_SERVER[REMOTE_ADDR];
$fullhost = gethostbyaddr($ip);
$host = preg_replace("/^[^.]+./", "*.", $fullhost);
$useragent = $_SERVER['HTTP_USER_AGENT'];
$pdo = new PDO('mysql:host=localhost;dbname=***', ***', '***');
$sql = "INSERT INTO IP SET ip = :ip, vorname = :vorname, nachname = :nachname, mail= :mail, host = :host, fullhost = :fullhost, latitude = :latitude, longitude = :longitude, useragent = :useragent, aussehen = :aussehen, uebersicht = :uebersicht, inhalte = :inhalte";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':ip', $ip);
$stmt->bindvalue(':vorname', $vorname);
$stmt->bindvalue(':nachname', $nachname);
$stmt->bindvalue(':mail', $mail);
$stmt->bindvalue(':host', $host);
$stmt->bindvalue(':fullhost', $fullhost);
$stmt->bindvalue(':latitude', $latitude);
$stmt->bindvalue(':longitude', $longitude);
$stmt->bindvalue(':useragent', $useragent);
$stmt->bindvalue(':aussehen', $aussehen);
$stmt->bindvalue(':uebersicht', $uebersicht);
$stmt->bindvalue(':ihnalte', $ihnalte);
$stmt->execute();
?>
In der Request stehen auch einige Sachen (aussehen, uebersicht, inhalte, standort).
Wo ist der Fehler?