Php “插入到脚本中”对用户而言无法正常工作
我目前正在开发一个网站,出于任何原因,我创建用户的脚本已经决定不想添加用户。 我对PHP编码相当陌生,所以我还不太擅长对其进行故障排除 这第一段代码是我认为导致问题的脚本,但是我也不确定,因此我还将提供db.php代码Php “插入到脚本中”对用户而言无法正常工作,php,Php,我目前正在开发一个网站,出于任何原因,我创建用户的脚本已经决定不想添加用户。 我对PHP编码相当陌生,所以我还不太擅长对其进行故障排除 这第一段代码是我认为导致问题的脚本,但是我也不确定,因此我还将提供db.php代码 <?php include('classes/db.php'); if (isset($_POST['createaccount'])) { $username = $_POST['username']; $password = $_POS
<?php
include('classes/db.php');
if (isset($_POST['createaccount'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];
db::query('INSERT INTO users VALUES (null,:username, :password, :email', array(':username'=>$username, ':password'=>$password, ':email'=>$email));
echo "Success";
}
?>
这第二段代码就是要包含的内容
<?php
class DB{
public static function connect() {
$servername = "localhost";
$username = "username";
$password = "pass";
$database = "database";
try {
$pdo = new PDO("mysql:host=$servername;dbname=$database", $username, $password);
// set the PDO error mode to exception
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
} catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
if (isset($_POST['createaccount'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];
return $pdo;
}
}
public static function query($query, $params) {
$statement = self::connect()->prepare($query);
$statement->execute();
$data = $statement->fetchAll();
return $data;
}
}
?>
这里使用的大多数代码都是通过教程组合在一起的,因此这可能是造成错误的原因。创建一个新文件,例如form.php
<form action='db.php' method='post'>
<input type='text' name='username'/>
<input type='email' name='email'/>
<input type='password' name='password'/>
<input type='submit' name='createaccount' value='createaccount'/>
</form>
是否包含文件“classes/db.php”?如果不尝试将路径更改为绝对路径,而不是相对路径,则假设您的文件“db.php”存在于C:/Users/A/Desktop中,那么您的include语句应该是
包括('C:/Users/A/Desktop/db.php') 避免在问题中使用登录凭据您应该有一个在其操作中引用php页面的表单。e、 g.page.php:page2.php:您的db.php代码在insert查询中忘记了关闭括号。将查询更改为“插入用户值(空,:用户名,:密码,:电子邮件)”