php - 使用 PHP 将数据插入数据库(出错但不插入任何内容);

标签 php mysql

以下教程是我在网上找到的,这个教程基本上是向我展示如何将数据插入数据库。我有名为 JapaneseDefinition 的数据库,并且有名为 Japanesewords 的表。我得到了将日语单词和英语发送到我的数据库的 HTML 代码。

我能够使用不同的查询查找单词,但我对 INSERT 查询没有这样的查找。有人可以看看我的代码并告诉我哪里出了问题吗?

                    try{
$conn = new PDO('mysql:host=Jamal-PC;dbname=japanesewords',$username,$password);
if(isset($_POST['EnglishWord'])){
$Japaneseword = $_POST ['JapaneseWord'];
$Englishword = $_POST['EnglishWord'];
$q = "INSERT INTO Japanesedefinition(Japaneseword,Englishword)VALUES(:Japaneseword,:Englishword):";
$query = $conn->prepare($q);
$result = $query->execute(array(
'Japaneseword'=>$Japaneseword,
"Englishword"=>$Englishword
));
}
}catch(PDOException $e){
 echo 'ERROR: ' . $e->getMessage();
}
echo 'hello';
}
myTest();
?>

最佳答案

您需要将冒号添加到执行数组键中。

$result = $query->execute(array(
':Japaneseword'=>$Japaneseword,
":Englishword"=>$Englishword
));

编辑:如果这不能解决问题并且您从查询字符串末尾删除了冒号(您有 ):"; ),那么下一步是检查您的帖子数据

//put this at the top of the script and make sure all your post 
//variables are set as expected
echo '<pre>';
print_r($_POST);
echo '</pre>';

关于php - 使用 PHP 将数据插入数据库(出错但不插入任何内容);,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18775538/

相关文章:

php - 正则表达式删除文本中条件的特定匹配(php)

php - MySQL随机结果分组顺序

php - 使用 php 将数据从 sql 数据库导出到 csv 会产生奇怪的结果

html - 如何允许用户在 Rails 中提交自定义电子邮件模板?

mysql - 当我在 Pagodabox.io 上推送我的 Laravel 应用程序时,迁移没有执行?

php - 在 Laravel 中应用 Eloquent 的 ORM 的最佳方式?

javascript - 如何使用存储在值中的 am/pm 使 PHP 倒计时?

php - 这个PHP图片上传代码是否存在安全漏洞(LNMP服务器上的图片文件被恶意替换)?

javascript - mysql 列的日期在发送到前端后发生更改

MySQL 为每个用户选择最后一个条目,而不是下一个条目