【发布时间】:2017-07-05 12:05:21
【问题描述】:
// connection.php file
<?php
class Connection{
private $host;
private $username;
private $password;
private $database;
public function __construct($host,$username,$password,$database)
{
try{
$conn = new PDO("mysql:host=".$host.";dbname=".$database, $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $conn;
}catch(PDOException $e)
{
return $e->getMessage();
}
}
}
?>
// user.php
<?php
class Users extends Connection{
private $username;
private $email;
private $password;
public function __construct($username,$email,$password){
$this->username=$username;
$this->email=$email;
$this->password=$password;
}
public function addUser(){
$conn = new Connection("localhost","root","","userdata");
echo "database connection established";
die();
$sql = $conn->prepare("INSERT INTO information (UserName, Email, Password) VALUES (?, ?, ?)");
$conn->bind_param("sss", $username, $email, $password);
$username=this->username;
$password=this->password;
$email=this->email;
$sql->execute();
echo "New records created successfully";
$sql->close();
$conn->close();
}
}
?>
process.php
<?php
include('lib/connection.php');
if(isset($_POST['username']) && isset($_POST['email']) && isset($_POST['password']))
{
$user = new User("Gautam","gautam@mail.com","123456");
$user->addUser();
}
?>
所以问题当我尝试执行 process.php 文件时,记录没有添加到数据库中。所以我已经单独创建了连接类,我已经在其中编写了数据库连接的逻辑,然后我将该类继承给了用户我将用户添加到数据库中,然后我在 process.php 中调用了用户类的对象,但记录没有添加到数据库中。请说明与之相关的问题。
【问题讨论】:
-
可以添加这个错误信息吗?
-
显示
bind_param方法的实现。 -
“请说明问题所在”确实。
-
此代码未运行我无法将用户添加到数据库
-
可能因为这行 echo "database connection established";死();删除这个 die();