我试了我能想到的一切,我一遍又一遍地看着它。我添加了echo ();
,以查看问题是否出在其他方面。所有内容的拼写都与服务器上的一样。我不知道还能做什么。请帮帮我!!
<?php
include('../lock.php');
$username = $login_session;
$characterName = mysql_real_escape_string($_POST['characterName']);
$gender = mysql_real_escape_string($_POST['gender']);
$height = "58" + rand(2, 20);
$weight = "120" * rand(2, 8);
echo ($id . "<br />");
echo ($username . "<br />");
echo ($characterName . "<br />");
echo ($gender . "<br />");
echo ($height . "<br />");
echo ($weight . "<br />");
if(isset($_POST['nc1']))
{
$query = "INSERT INTO character(id, username, characterName, gender, height, weight) VALUES ('$id', '$username', '$characterName', '$gender', '$height', '$weight')";
mysql_query($query) or die('Error: ' . mysql_error());
//header('location:success.php');
echo ("success");
}
?>
2014年1月29日-我已经进行了您建议的更新(除了mysqli),并且一切都正确回显,mysql_error()返回空白,但有一个错误。开机自检工作正常。我还是不知道怎么修好它。连接也是正确的。
我收回那句话,错误是:您的SQL语法中有一个错误;请查看与您的MySQL服务器版本对应的手册,以获得正确的语法,以便在第1行使用附近的'character (id,username,characterName,gender,height
发布于 2013-11-03 23:39:13
首先,您必须在问题中指定数据库的逻辑结构,并且您的id似乎是一个主键,并且您已经执行了$id = $id
。这可能会导致id重复或为空,因此对该变量的第一个检查将被设置或未设置,并检查其他约束,如not null。如果它被应用到字段中,并且没有实现,那么也不能插入行。
然后检查你的数据库连接字符串,如果你可以通过如下连接字符串连接到数据库,
boolean function connect($host, $uname , $pass){
if(mysql_connect($host, $uname, $pass))
return true;
else
return false;
}
试一试,也许你能插入行
发布于 2013-11-03 23:26:50
确保您的sql_connect是正确的,如果您使用的是localhost
,那么您应该具有如下内容
mysql_connect("localhost","root","password") or die(mysql_error)
确保使用或终止,因为这将显示数据库连接中可能存在的任何错误
https://stackoverflow.com/questions/19754506
复制相似问题