这是我的
PHP代码实现插入到db:
- <?PHP
- require_once "includes/db_data_inc.PHP";
- try
- {
- $DBH = new PDO("MysqL:host=$db_host;dbname=$db_name",$db_user,$db_pass);
- $DBH->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
- $cathy = new patient($_POST['name'],$_POST['surname'],$_POST['address'],$_POST['birth-place'],$_POST['province'],$_POST['dt'],$_POST['gender'],$_POST['select']);
- $STH = $DBH->prepare("INSERT INTO users (name,surname,address,birth_place,province,dt,sex,case) value (:name
- :surname,:address,:birth_place,:province,:dt,:sex,:case)");
- $STH->execute((array)$cathy);
- }
- catch (PDOException $pdoe)
- {
- error_log($pdoe->getMessage());
- die("An error was encountered!");
- }
- ?>
这里是db_data_inc.PHP,其中存储了db_info以及我创建对象患者的位置
- $db_host = 'localhost';
- $db_name = 'main_db';
- $db_user = 'root';
- $db_pass = 'root';
- /* Create an object patient */
- class patient
- {
- public $name;
- public $surname;
- public $address;
- public $birth_place;
- public $province;
- public $birth_date;
- public $sex;
- public $case;
- function __construct($nm,$sur,$addr,$bp,$pr,$bd,$sx,$cs)
- {
- $this->name = $nm;
- $this->surname = $sur;
- $this->address = $addr;
- $this->birth_place = $bp;
- $this->province = $pr;
- $this->birth_date = $bd;
- $this->sex = $sx;
- $this->case = $cs;
- }
- }
我收到此错误:
- [10-Feb-2012 21:14:29] sqlSTATE[HY093]: Invalid parameter number: parameter was not defined
但我没有意识到原因……为什么我得到这个错误?有人可以帮帮我吗?哪里出错了?