我每次尝试删除my表中删除的条目时,都会在我的PHP中遇到问题,但会输出错误。误差如下:从PHP删除表时删除mySQL错误
警告:mysqli_query()[function.mysqli-查询]:无法提取的mysqli
警告:mysqli_num_rows()预计参数1被mysqli_result, 空给出
警告:mysqli_close()[function.mysqli关闭]:无法获取的mysqli
我似乎无法找出为什么发生这种情况,可能是很简单的,但我是相当新到MySQL的如此希望更高级的人可以告诉我哪里出错了。
<?
if(isset($_GET['deleteTweet'])) {
$deleteTweet = $_GET['deleteTweet'];
$sql = "DELETE FROM bestTweets WHERE id=".$deleteTweet;
if (mysqli_query($conn, $sql)) {
echo "Record deleted successfully";
} else {
echo "Error deleting record: " . mysqli_error($conn);
}
mysqli_close($conn);
}
$sql = "SELECT id, tName, tUsername, tTimeDate, tBody FROM bestTweets";
$result = mysqli_query($conn, $sql);
$onMouseOver = 'onmouseover="this.src='."'IMAGES/binBtn_Hover.svg'".'" ';
$onMouseOut = 'onmouseout="this.src='."'IMAGES/binBtn.svg'".'"';
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
echo
'<div id="tweetContainer" class="tweetContainer">
<div id="tweetMain">
<div id="tweetName">
<p>'.$row['tName'].'</p>
</div>'.
'<div id="tweetUsername">
<p>'.$row['tUsername'].'</p>
</div>'.
'<div id="tweetDateTime">
<p>' .$row['tTimeDate'].'</p>
</div>'.
'<div id="tweetBody">
<p>'.$row["tBody"].'</p>
</div>
<div id="tweetSave">
<form action="Saved.php?isset=true&deleteTweet='.$row["id"].'" method="post">
<button type="submit" name="binBtn1" class="saveBtn"><img src="IMAGES/binBtn.svg"'.$onMouseOver.$onMouseOut.' width="50px" height="50px"></button>
</form>
</div>
</div>
</div>';}
}
else {
echo "0 results";
}
mysqli_close($conn);
?>
您是否已将'$ conn'定义为连接?你为什么要'mysqli_close($ conn);'在查询完成之前? – Qirel
你的代码容易受到SQL注入的攻击,你应该使用mysqli和[参数绑定](http://php.net/manual/en/mysqli-stmt.bind-param.php) –