我有这个代码,它似乎正在工作。值正在更新,但是当我重新加载页面时,更新的值没有任何值。例如,现在我将标题设置为“blablabla”,当我重新加载页面时,它将变为“”。
这是代码
<?php
$title = $_POST['title'];
$meta = $_POST['meta'];
$email = $_POST['email'];
$analytics = $_POST['analytics'];
$query = "UPDATE websettings SET title = '$title', meta = '$meta', email = '$email', analytics = '$analytics' WHERE id = '1'";
if(mysql_query($query)){
echo "success";
}
else {
echo "fail";
}
?>
答案 0 :(得分:2)
您的代码将$_POST
变量应用于数据库,但不检查客户端是否实际发布了任何内容。最好检查$_POST
是否包含数组项(如果表单已发布),并检查是否已设置每个项(如果用户填写了正确的字段),并在保存之前验证用户输入(电话号码,电子邮件等格式正确)。
正如评论中指出的那样,您很容易受到SQL注入攻击 - 这是您应该解决的第一件事。
尝试启用更多PHP错误 - 这些将标记为未设置的变量,以便更快地修复。