菜鸟问题,PHP向数据库写入数据,显示成功,但数据库还是空的,怎么回事?
代码<?$conn=@mysql_connect("localhost","root","")ordie("Error");mysql_select_db("test",...
代码
<?
$conn=@mysql_connect("localhost","root","") or die ("Error");
mysql_select_db("test",$conn);
mysql_query("set names 'GBK'");
if($_POST['submit'])
{
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
mysql_query($sql);
echo "Success";
}
?>
<form action="test.php" method="post">
<span>用户:</span><input type="text" name="user"/><br/>
<span>标题:</span><input type="text" name="title"/><br/>
<span>内容:</span><br/>
<textarea name="txt"></textarea><br/>
<input type="submit" name="submit" value="提交"/>
</form>
照二楼所说,改后显示 No database selected,搜了下,别人给解决方案是 将mysql_query($dbname,$link)中$link补上,但问题依旧……
?? 展开
<?
$conn=@mysql_connect("localhost","root","") or die ("Error");
mysql_select_db("test",$conn);
mysql_query("set names 'GBK'");
if($_POST['submit'])
{
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
mysql_query($sql);
echo "Success";
}
?>
<form action="test.php" method="post">
<span>用户:</span><input type="text" name="user"/><br/>
<span>标题:</span><input type="text" name="title"/><br/>
<span>内容:</span><br/>
<textarea name="txt"></textarea><br/>
<input type="submit" name="submit" value="提交"/>
</form>
照二楼所说,改后显示 No database selected,搜了下,别人给解决方案是 将mysql_query($dbname,$link)中$link补上,但问题依旧……
?? 展开
4个回答
展开全部
这是因为写程序的人欺骗了你,他根本没检测是否成功,直接就告诉你成功。我们写程序的时侯千万别学他这样瞒上欺下,现在需要修改他的下面的三行语句:
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
mysql_query($sql);
echo "Success";
修改为:
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
if (mysql_query($sql)) echo "Success";
else echo "插入失败,SQL语句:$sql<br>错误信息:".mysql_error();
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
mysql_query($sql);
echo "Success";
修改为:
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
if (mysql_query($sql)) echo "Success";
else echo "插入失败,SQL语句:$sql<br>错误信息:".mysql_error();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把这几个变量分别echo一下,看看有没有接收值$_POST[user],$_POST[title],$_POST[txt]');把sql也echo一下。
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
mysql_query($sql);
echo "Success";
改成
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
$query = mysql_query($sql);
if($query>0){
echo "Success";}
else{
echo "false";}
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
mysql_query($sql);
echo "Success";
改成
$sql="INSERT INTO test (user,title,txt) VALUES ('$_POST[user]','$_POST[title]','$_POST[txt]');";
$query = mysql_query($sql);
if($query>0){
echo "Success";}
else{
echo "false";}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这根本没有检测嘛,无论是否成功他都会输出“success”的,应该判断一下的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
修改一下
VALUES ('{$_POST['user']}','{$_POST['title']}','{$_POST['txt']}')";
VALUES ('{$_POST['user']}','{$_POST['title']}','{$_POST['txt']}')";
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询