以下教程是我在网上找到的,这个教程基本上是向我展示如何将数据插入数据库。我有名为 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/