2012-10-08 55 views
0

我找不到为什么当我点击我的提交按钮时,它不处理数据。我目前有这样的查询。MySQLI字符串不会更新信息

$link = mysqli_connect("$server", "$user", "$pass", "webdb"); 
$page = mysqli_real_escape_string($link, (string) $_POST['page']); 
$content = mysqli_real_escape_string($link, (string) $_POST['content']); 
$query = "UPDATE `pages` SET `content`='$content' WHERE `name`='$page'"; 
mysqli_query($link, $query); 
mysqli_close($link); 
header("location: index.php"); 
?> 

要连接到这个查询我有我的表单提交数据。

<form action="update_content.php" method="post"> 
<textarea name="content" cols="60" rows="10"></textarea> 
<input type="hidden" name="page" value="Index" /> 
<br /><input type="submit" value="Update" /> 
</form> 

从我的立场看,一切看起来都是正确的。我一直在绞尽脑汁,在网上浏览几个小时,而我在这里找不到解决方案。

+0

要调试,请尝试'echo $ query;'在启动'mysqli_query'之前查看它是否有一些有效的数据。 – Bjoern

+0

你现在得到什么错误..? –

+0

你的PHP查询是否隐藏在检查表单提交的'if'循环中? –

回答

0

第1步:

打印查询变量,这样就可以知道查询构造良好。

(注释重定向,以便您可以看到查询输出)

第2步:

如果在查询中传递的值不正确或为空,通过打印 解决这个问题通过PARAMS(可以打印$_REQUEST - 这将显示张贴的所有值)

步骤3

如果所有这些都是正确的,并且查询未正确执行,请检查您的 数据库连接。

您可以打印出连接变量$link以查看连接是否成功。

这些步骤将帮助您理清问题。

让我知道这些步骤是否对您没有帮助。

+0

当连接问题得到解决时,问题实际上已解决。谢谢你。 –

+0

好吧..如果您发现我的想法有用,您可以接受答案。 – balanv

0

实际的答案是当重定向被禁用时我能够看到连接失败,这是我无法看到,直到禁用重定向才能看到echo $查询字符串。经验教训:检查以确保所有变量都是正确的。 :)