由于某些原因,当我在其中包含以下php代码时,我的页面将无法加载...但是当我在编辑器中验证SQL stmt时,它会返回结果(1行)。我已尝试使用F12 Chrome进行调试,但控制台在某些CSS内部没有显示任何错误。我真的不知道如何进一步使用它。
有什么初步想法吗?
页: http://www.runic-paradise.com/editinfo.php
在页面存在时杀死页面的代码:
// GET NEWS FROM DB
$result = $mysqli->query("SELECT Content, Reference FROM site WHERE Reference='Rules'");
周边 代码:
<form id="newsform" name="newsform" action="editinfo.php?step=2" method="post" enctype="multipart/form-data">
<h4>Server Rules</h4>
<textarea class="editor" rows="4" style="width:50%;" name="Content" id="postbody">
<?php
//UPDATE DB IF NECESSARY
if($_GET['step'] == 2) {
$mysqli->query("UPDATE site SET Content='$_POST[Content]' WHERE Reference='Rules'");
}
// GET NEWS FROM DB
$result = $mysqli->query("SELECT Content, Reference FROM site WHERE Reference='Rules'");
var_dump($mysqli->error);
echo $result['Content'];
$mysqli->close();
?>
</textarea>
<!-- hidden inputs -->
<input type="hidden" id="x" name="x" />
<input type="hidden" id="y" name="y" />
<input type="hidden" id="w" name="w" />
<input type="hidden" id="h" name="h" />
<input type="hidden" name="step" value="2">
<br><br>
<input type="submit">
</form>
答案 0 :(得分:3)
您没有正确提取数据。
$result = $mysqli->query("SELECT Content, Reference FROM site WHERE Reference='Rules'");
$result = $result->fetch_assoc(); // <-- here
echo $result['Content'];
您需要先将结果检索为数组,然后才能将结果视为数组。
答案 1 :(得分:1)
这是丑陋的代码,不受任何SQL注入的保护。不要直接将用户输入数据传递给SQL。
可能是错误:
<b>Fatal error</b>: Cannot use object of type mysqli_result as array in <b>/home/content/60/11957760/html/runicparadise/editinfo.php</b> on line <b>117</b><br />