我是PHP的新手,到目前为止我已经设法连接到我的数据库,但是当我尝试将数据发送到数据库时,我没有得到任何脚本错误,但是数据我没有收到消息"成功创建用户!",这基本上意味着数据已被发送到了正确的位置?
这是我的剧本:
<?php
$user = $_POST['user'];
$name = $_POST['name'];
$pass = $_POST['password'];
$con = mysql_connect("fdb13.awardspace.net", "myusername", "mypassword") or die(mysql_error());
if(!$con)
die('Could not connectzzz: ' . mysql_error());
mysql_select_db("myusername" , $con) or die ("could not load the database" . mysql_error());
$check = mysql_query("SELECT * FROM unitytut WHERE `user`='".$user."'");
$numrows = mysql_num_rows($check);
if($numrows == 0)
{
$pass = md5($pass);
//$ins = "INSERT INTO unitytut (user, name, pass) VALUES ('John', 'Doe', 'John');";
//$ins = ("INSERT INTO `unitytut` (`user`), (`name`), (`pass`) VALUES ('' , 'John', 'Doe', 'John''John', 'Doe', 'John') ; ");
$ins = ("INSERT INTO `unitytut` (`user`), (`name`), (`pass`) VALUES ('' , '".$user."' , '".$name."', '".$pass."') ; ");
if($ins)
die("Succesfully Created User!");
else
die("ERROR");
}
else
{
die("user already exists!");
}
?>
我尝试了几种插入方法,但只有3种功能没有收到&#34; ERROR&#34;消息是:
$ins = mysql_query("INSERT INTO unitytut (`user`), (`name`), (`pass`) VALUES ('' , '$user' , '$name', '$pass')" ) ;
和
$ins = ("INSERT INTO `unitytut` (`user`), (`name`), (`pass`) VALUES ('' , 'John', 'Doe', 'John''John', 'Doe', 'John') ; ");
和
$ins = ("INSERT INTO `unitytut` (`user`), (`name`), (`pass`) VALUES ('' , '".$user."' , '".$name."', '".$pass."') ; ");
我的桌子上也有一个ID,但由于我一直在研究这个问题而没有设法修复它,我还读到我不需要在脚本中指定ID作为用户正在自动获取身份证,但由于我还没有这个工作,我不确定。
我对PHP和数据库一般都很陌生,但我现在已经坚持了一段时间,所以任何帮助都会非常感激:)
我也欢迎任何有关我发布此内容的方式的反馈,我是否向您提供了太多信息,一篇文章中的问题太多,文字太多等等?
谢谢!
答案 0 :(得分:3)
您应该像这样格式化INSERT语句:
$ins = mysql_query("INSERT INTO unitytut (`user`,`name`,`pass`) VALUES ('$user' , '$name', '$pass')" ) ;
但是,mysql_query
已被弃用,See this link并遵循有关使用较新扩展程序的建议