没有实际错误,但是当非买方或卖方的用户访问该页面时,它仍然显示错误消息.是否可以抑制错误消息?
直接链接到图像
alt text http://i37.tinypic.com/2m5ijvq.jpg
替代文字http://i36.tinypic.com/148kads.jpg
//transaction id
$transactionid = $_GET['id'];
//Retrieve info about transaction
$query = "SELECT ads.*, feedback.*, transactions.* FROM (ads INNER JOIN transactions ON ads.id=transactions.ad_id) INNER JOIN feedback ON transactions.id=feedback.transaction_id WHERE transaction_id = '$transactionid'";
$data = mysqli_query($dbc, $query);
$row = mysqli_fetch_array($data);
$seller = $row['seller'];
$buyer = $row['buyer'];
//check if user is buyer or seller
if ($_SESSION['user_id'] == $seller) {
$query = "SELECT * FROM feedback WHERE transaction_id = '$transactionid' AND seller_comment IS NULL";
$data1 = mysqli_query($dbc, $query);
} else if ($_SESSION['user_id'] == $buyer) {
$query = "SELECT * FROM feedback WHERE transaction_id = '$transactionid' AND buyer_comment IS NULL";
$data1 = mysqli_query($dbc, $query);
}
//if user is buyer/seller echo form to them to submit feedback
if (mysqli_num_rows($data1) == 1) {
echo '<p><form method="post" action="feedback.php?id=' . $transactionid . '&action=submitfeedback">
<textarea id="feedback" name="feedback" rows="10" cols="30"></textarea><br/>
<input type="submit" value="Submit" name="submit" /></form></p>';
} else {
echo '<p>feedback already given</p>';
}
Run Code Online (Sandbox Code Playgroud)
您可能希望解决警告,而不仅仅是掩盖警告.您应该能够通过将if语句更改为:
if(!empty($data1) && mysql_num_rows($data1) == 1) {
Run Code Online (Sandbox Code Playgroud)
问题是尝试将NULL传递给mysql函数.