2016-01-30 2 views
1

Я искал правильный ответ, но ни один из них не помог мне с этой ошибкой. У меня есть страница с именем profile.php, в которой есть 3 разных вкладки с некоторой информацией, сгенерированной из базы данных mysqli. Проблема в том, что я должен показать заказы на третьей вкладке, для которой я написал код. Если никакие заказы не были размещены, он должен вывести «Пока никаких заказов не было!». Он показывает сообщение, но также показывает предупреждение.mysqli_num_rows() ожидает, что параметр 1 будет mysqli_result,

Предупреждение: mysqli_num_rows() ожидает параметр 1, чтобы быть mysqli_result, булево приведены в D: \ XAMPP \ HTDOCS \ WebProject \ profile.php на линии 211

Вот мой код третьей вкладке.

Код

<div id="menu3" class="tab-pane fade"> 
<h3>My Orders</h3> 
<?php 
$q="select customers.*, orders.date,orders.status from orders inner join customers on orders.customerid=customers.serial_cust where customers.email='$email'" ; 
$result=mysqli_query($con,$q); 
    if(mysqli_num_rows($result)>0){ 
    while($row=mysqli_fetch_array($result)) 
    { 
    $custid=$row['serial_cust']; 
    $ordersdate=$row['date']; 
    echo "<tr>"; 
    echo "<h3>".$row['date']."</h3>"; 
    echo "<h3> Status: Dispatched -> </h3> <p>".$row['status']."</p>"; 
    echo"<table border='1'>"; 
    $query="select customers.*, order_detail.*,orders.date,orders.customerid,products.* from order_detail inner join orders on orders.serial=order_detail.orderid inner join products on products.productid=order_detail.productid inner join customers on orders.customerid=customers.serial_cust where customers.serial_cust='$custid' and orders.date='$ordersdate' "; 
    $sql=mysqli_query($con,$query); 
    while($row=mysqli_fetch_array($sql)) 
    { 
    ?> 
    <tr> 
    <td><image width="80px" height="90px" src="assets/<?php echo $row['product_image'] ?>"/></td> 
    <td><?php echo $row['product_name']. " * ". $row['quantity']?></td> 
     <td><?php echo $row['color'] ?></td> 
     <td><?php echo $row['price'] ?></td> 
     <td><?php echo $row['size'] ?></td> 
     </tr> 
    <?php 
     } 
     echo "</table>"; 
    } 
    } 
    else{ 
    echo "You have not place any orders yet!"; 
     } 
     ?> 
     </div> 
+0

проверьте ваш запрос. –

+2

используйте ваш запрос, чтобы вы могли получить ошибку mysql. 'mysql_query ($ con, $ q) или die (mysql_error());' –

+1

скопируйте и вставьте свой запрос в phpmyadmin (вкладка запроса), затем сообщите, что вы видите. –

ответ

0

Propably у Вас есть ошибка в запросе. Используйте этот код для его отладки:

$q="select customers.*, orders.date,orders.status from orders inner join customers on orders.customerid=customers.serial_cust where customers.email='$email'" ; 
$result=mysqli_query($con,$q); 
if (!$result) 
    echo(mysqli_error($con)); 

if(mysqli_num_rows($result)>0){ 
... 
} 
+0

это решило проблему !! :) – tabia

Смежные вопросы