gpt4 book ai didi

php - PDO 插入不起作用(PHP/MySQL)

转载 作者:行者123 更新时间:2023-11-29 13:41:07 24 4
gpt4 key购买 nike

经过几天的反复试验,我终于用 PDO 替换了我的标准 mysql 代码。一切似乎都工作得很好,除了应用程序需要将用户(姓名、电子邮件和注册时间)插入数据库的最后一部分。点击提交后,页面变成空白。

我不明白代码有什么问题,所以如果您能帮助我,我将不胜感激。

<?php

////Database connection values
$dsn = 'mysql:host=host; dbname=name; charset=utf8';
$db_user = 'username';
$db_pass = 'password';

//Database connection
$db = new PDO($dsn, $db_user, $db_pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // Enable Exception error mode
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); // Use PDO safely = Turn off prepare emulation

// Databse connection check
if($db){
print "connected to the db " . "<br />";
}

//Declare values
$name = "";
$email = "";
$userMsg = "";


if ($_POST['name'] != "") {


$name = $_POST['name'];
$email = $_POST['email'];

//MySQL SELECT Query
$stmt = $db -> prepare ("SELECT * FROM newsletter WHERE email=?");
$stmt-> bindValue(1, $email);
$stmt -> execute ();


//Error - No email
if (!$email) {

$userMsg = '<br /><br /><h4><font color="FF0000">Please type an email address ' . $name . '.</font></h4>';

} // End email-input check

//Error - Email already in the system
else if ($stmt -> rowCount() > 0) {

$userMsg = '<br /><br /><h4><font color="FF0000">' . $email . ' is already in the system.</font></h4>';

} // End Row check

//OK - insert user into database
else {

$insert = $db -> prepare ("INSERT INTO newsletter (name, email, dateTime) VALUES(:name, :email, ,NOW())");
$insert -> execute(array(':name' => $name, ':email' => $email));

//Success! - Notify user
$userMsg = '<br /><br /><h4><font color="0066FF">Thanks ' . $name . ', you have been added successfully.</font></h4>';

$name = "";
$email = "";

} // End INSERT


}

?>

最佳答案

VALUES(:name, :email, ,NOW())"                            

应该是

VALUES(:name, :email, NOW())"

关于php - PDO 插入不起作用(PHP/MySQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18062906/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com