这是php脚本tht获取字符串并将其插入数据库。
<?php
include 'connect.php';
$name = $_POST['name'];
$message = $_POST['message'];
$message = nl2br($message);
if(isset($name) && isset($message)){
$sql = "INSERT INTO messages VALUES('','".$name."', '".$message."')";
if($sqlrun = mysqli_query($connection , $sql)){
header('Location:../write.php');
}else{
echo "query doesnt work";
}
}
?>
它只适用于小字符串的原因是什么?在数据库中,该字段是一个最多包含1000位的文本。
为什么不检查是否有任何错误?有消息总比没有消息好。
$sql = "INSERT INTO messages VALUES('','".$name."', '".$message."')";
if($sqlrun = mysqli_query($connection , $sql)){
header('Location:../write.php');
exit();
}else{
echo "query doesnt work: " . mysqli_error(); // jaaaj information!
}
我不知道为什么,但在我一次又一次地检查sql查询后,我意识到对于值中的第一个参数(专用于自动递增字段的"),我必须在其中放入NULL,这样查询应该是这样的:
$sql="INSERT INTO messages VALUES(NULL,'".$name."','"$$message."')";
再说一遍,我不知道为什么现在它能起作用。
无论如何,谢谢大家!