minneapolis Posted April 14, 2006 Share Posted April 14, 2006 I have this weird error:::Call to a member function fetch_array() on a non-object .code is the following::://connect to the DB$connect = new mysqli("localhost","ics325sp0604", "13855", "ics325sp0604" );.....(CUT)//insert information captured$query = "SELECT FROM carttemp WHERE carttemp_sess='$sessid'";$results = mysqli_query($connect, $query);//put data in the DBwhile ($row = mysqli_fetch_array($results)) { //line 105 extract($row); $query4 = "INSERT INTO orderdet( orderdet_ordernum, orderdet_qty, orderdet_prodnum) .......(CUT)The error is Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /home/students/ics325sp06/ics325sp0604/public_html/project4/checkout3.php on line 105Step 1 - Please Enter Billing and Shipping InformationStep 2 - Please verify that your order is accurateStep3 - Order Confirmation and Receipt i tried several combination like: $row = $connect->fetch_array($results).... or $row = $results->fetch_array() But NO GO...Can anybody help...Thanks again Quote Link to comment Share on other sites More sharing options...
toplay Posted April 14, 2006 Share Posted April 14, 2006 Always check for errors before executing any subsequent mysql related commands. If you did that, you would see that you have not selected any columns, and hence that's your error in the SQL. Also, if you're going to use extract() might as well just use the fetch by association. Below I used "*" to retrieve all columns from the table.[code]...$query = "SELECT * FROM carttemp WHERE carttemp_sess='$sessid'";$results = mysqli_query($connect, $query) or die("SQL: $query Error: " . mysqli_error());//put data in the DBwhile ($row = mysqli_fetch_assoc($results)) { //line 105extract($row);...}[/code] Quote Link to comment Share on other sites More sharing options...
minneapolis Posted April 14, 2006 Author Share Posted April 14, 2006 toplay thanks for the prompt reply, however when i do what you suggested , the only info i get is :Step 1 - Please Enter Billing and Shipping InformationStep 2 - Please verify that your order is accurateStep3 - Order Confirmation and Receipt [code]?phpsession_start();//connect to the DB$connect = new mysqli("localhost","ics325sp0604", "13855", "ics325sp0604" );//declare the necessary variables$firstname = $_POST['firtsname'];$lastname = $_POST['lastsname'];$add1 = $_POST['add1'];$add2 = $_POST['add2'];$city = $_POST['city'];$state = $_POST['state'];$zip = $_POST['zip'];$phone = $_POST['phone'];$fax = $_POST['fax'];$email = $_POST['email'];$shipfirst = $_POST['shipfirst'];$shiplast = $_POST['shiplast'];$shipadd1 = $_POST['shipadd1'];$shipadd2 = $_POST['shipadd2'];$shipcity = $_POST['shipcity'];$shipstate = $_POST['shipstate'];$shipzip = $_POST['shipzip'];$shipphone = $_POST['shipphone'];$shipemail = $_POST['shipemail'];$total = $_POST['total'];$sessid = session_id();$today = date("y - m- d");// Assign a CU Number$query = "SELECT FROM customers WHERE (customers_firstname = '$firstname' AND customers_lastname = '$lastname' AND customers_add1 = '$add1' AND customers_add2 = '$add2' AND customers_city = '$city')";$results = $connect->query($query);$rows = $results->num_rows;if ($rows < 1) { $query2 = "INSERT INTO customers ( customers_firstname, customers_lastname, customers_add1, customers_add2, customers_city, customers_state, customers_zip, customers_phone, customers_fax, customers_email) VALUES ( '$firstname', '$lastname', '$add1', '$add2', '$city', '$state', '$zip', '$phone', '$fax', '$email')"; $insert = $connect->query($query2); $custid = $connect->insert_id;}//CU exists ??if ($custid) { $customers_custnum = $custid;}$shipping = $total * 0.25;$query3 = "INSERT INTO ordermain ( ordermain_orderdate, ordermain_custnum, ordermain_subtotal, ordermain_shipping, ordermain_shipfirst, ordermain_shiplast, ordermain_shipadd1, ordermain_shipadd2, ordermain_shipcity, ordermain_shipstate, ordermain_shipzip, ordermain_shipphone, ordermain_shipemail) VALUES ( '$today', '$customers_custnum', '$total', '$shipping', '$shipfirst', '$shiplast', '$shipadd1', '$shipadd2', '$shipcity', '$shipstate', '$shipzip', '$shipphone', '$shipemail')";$insert2 = $connect->query($query3);$orderid = $connect->insert_id;//insert information captured$query = "SELECT * FROM carttemp WHERE carttemp_sess='$sessid'";$results = mysqli_query($connect, $query);//put data in the DBwhile ($row = mysqli_fetch_array($results)) { extract($row); $query4 = "INSERT INTO orderdet( orderdet_ordernum, orderdet_qty, orderdet_prodnum) VALUES ( '$orderid', '$carttemp_quan', '$carttemp_prodnum')";$insert4 = $connect->query($query4);}//delete from temp table$query = "DELETE FROM carttemp WHERE carttemp_sess = '$sessid'";$delete = $connect->query($query);//Send Email$to = "<" . $email .">";$subject = "Order Confirmation";$message = "<html><head><title>Order Confirmation</title></head><body>Your order as submitted<br><br>Order date: ";$message .=$today;$message .= " <br> Order Number: ";$message .= $orderid;$message .= " <table width=\"50%\" border=\"0\"> <tr> <td> <p>Bill to:<br>";$message .= $firstname;$message .= " ";$message .= $lastname;$message .= "<br>";$message .= $add1;$message .= "<br>";if ($add2) { $message .= $add2 . "<br>";}$message .= $city . ", " . $state . " " . $zip;$message .="</p></td> <td> <p>Ship to:<br>";$message .= $shipfirst . " " . $shiplast;$message .= "<br>";$message .= $shipadd1 . "<br>"; if ($shipadd2) { $message .= $shipadd2 . "<br>"; }$message .= $shipcity . ", " . $shipstate . " " . $shipzip;$message .= "</p> </td> </tr> </table> <hr width=\"250px\" align=\"left\"> <table cellpadding=\"5\">";//insert into the message$query = "SELECT * FROM orderdet WHERE orderdet_ordernum = '$orderid'";$results = $connect->query($query);while ($row = mysqli_fetch_array($results)) { extract($row); $prod = "SELECT * FROM products WHERE products_prodnum = '$orderdet_prodnum'"; $prod2 = $connect->query($prod); $prod3 = mysqli_fetch_array($results); extract($prod3); $message .= "<tr><td>"; $message .= $orderdet_qty; $message .= "</td>"; $message .= "<td>"; $message .= $products_name; $message .= "</td>"; $message .= "<td align=\"right\">"; $message .= $products_price; $message .= "</td>"; $message .= "<td align=\"right\">"; $extprice = number_format($products_price * orderdet_qty, 2); $message .= $extprice; $message .= "</td>"; $message .= "</tr>";} $message .= "<tr> <td colspan=\"3\" align=\"right\"> Your Total before shipping is: </td> <td align =\"right\">"; $message .= number_format($total, 2); $message .= " </td> </tr> <tr> <td colspan=\"3\" align=\"right\"> Shipping costs: </td> <td align=\"right\">"; $message .= number_format(($total + $shipping), 2); $message .= " </td> </tr></table></body></html>";$headers .= "From:<lznaidi@hotmail.com>\r\n";mail($to, $subject, $message, $headers);echo "Step 1 - Please Enter Billing and Shipping Information<br>";echo "Step 2 - Please verify that your order is accurate<br>";echo "<strong>Step3 - Order Confirmation and Receipt</strong><br><br>";//echo $message;?>[/code]i would appreciate if someone can point me to the right direction because i am loosing it with this code....Thanks for the help Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.