2016-12-27 2 views
0

I am trying to insert data into a table but getting this error- Catchable fatal error: Object of class mysqli_result could not be converted to string on line 44 the error is showing for the following line.Catchable фатальная ошибка: Объект класса mysqli_result не может быть преобразован в строку в строке 44

$query= "insert into product(proname,prodesc,proprice,proimg,catid) values('$proname','$prodesc','$proprice','$file_path','$catid')"; 
      if(mysqli_query($conn,$query)){ 
       header('location:product.php'); 
      } 
      else{ 
       echo 'cant insert data'.mysqli_error($conn); 
      } 
     } 
    } 
    ?> 

following is the entire program

$errors=array(); 
if(!(empty($_POST))){ 
    $proname=$_POST['proname']; 
    $proprice=$_POST['proprice']; 
    $prodesc=$_POST['prodesc']; 
    $catname=$_POST['cat']; 
    $catid=mysqli_query($conn,"select catid from category where catname='$catname'") or die('cant get category id'.mysqli_error($conn)); 
    if(empty($proname) or empty($proprice)){ 
     $errors[]='Please enter product name and price.'; 
    } 
    if(isset($_FILES['proimg'])){ 
     $file_name = $_FILES['proimg']['name']; 
     $file_size =$_FILES['proimg']['size']; 
     $file_tmp =$_FILES['proimg']['tmp_name']; 
     $file_type=$_FILES['proimg']['type']; 
     $file_ext=strtolower(end(explode('.',$_FILES['proimg']['name']))); 
     $expensions= array("jpeg","jpg","png"); 
     $file_path='imgproduct/'.$file_name; 
     if(in_array($file_ext,$expensions)=== false){ 
      $errors[]="extension not allowed, please choose a JPEG or PNG file."; 
     } 
    } 
    else{ 
     $errors[]='Please upload an image of product'; 
    } 
    if(!(empty($errors))){ 
     print_r($errors); 
    } 
    else{ 
     if(!(move_uploaded_file($file_tmp,$file_path))) { 
      echo '1.file not uploaded'; 
      exit; 
     } 
     $query= "insert into product(proname,prodesc,proprice,proimg,catid) values('$proname','$prodesc','$proprice','$file_path','$catid')"; 
     if(mysqli_query($conn,$query)){ 
      header('location:product.php'); 
     } 
     else{ 
      echo 'cant insert data'.mysqli_error($conn); 
     } 
    } 
} 
?> 

ответ

-1

Изменить

$query= "insert into product(proname,prodesc,proprice,proimg,catid) values('$proname','$prodesc','$proprice','$file_path','$catid')"; 

Для

$query= "insert into product(proname,prodesc,proprice,proimg,catid) values($proname,$prodesc,$proprice,$file_path,$catid)"; 
0

Сор ry для предыдущего ответа. Надежда теперь решит проблему.

$row = mysqli_fetch_array($result); $catid = $row['catid'];

$errors=array(); 
if(!(empty($_POST))){ 
    $proname=$_POST['proname']; 
    $proprice=$_POST['proprice']; 
    $prodesc=$_POST['prodesc']; 
    $catname=$_POST['cat']; 
    $result =mysqli_query($conn,"select catid from category where catname='$catname'") or die('cant get category id'.mysqli_error($conn)); 
    $row = mysqli_fetch_array($result); 
    $catid = $row['catid']; 

    if(empty($proname) or empty($proprice)){ 
     $errors[]='Please enter product name and price.'; 
    } 
    if(isset($_FILES['proimg'])){ 
     $file_name = $_FILES['proimg']['name']; 
     $file_size =$_FILES['proimg']['size']; 
     $file_tmp =$_FILES['proimg']['tmp_name']; 
     $file_type=$_FILES['proimg']['type']; 
     $file_ext=strtolower(end(explode('.',$_FILES['proimg']['name']))); 
     $expensions= array("jpeg","jpg","png"); 
     $file_path='imgproduct/'.$file_name; 
     if(in_array($file_ext,$expensions)=== false){ 
      $errors[]="extension not allowed, please choose a JPEG or PNG file."; 
     } 
    } 
    else{ 
     $errors[]='Please upload an image of product'; 
    } 
    if(!(empty($errors))){ 
     print_r($errors); 
    } 
    else{ 
     if(!(move_uploaded_file($file_tmp,$file_path))) { 
      echo '1.file not uploaded'; 
      exit; 
     } 
     $query= "insert into product(proname,prodesc,proprice,proimg,catid) values('$proname','$prodesc','$proprice','$file_path','$catid')"; 
     if(mysqli_query($conn,$query)){ 
      header('location:product.php'); 
     } 
     else{ 
      echo 'cant insert data'.mysqli_error($conn); 
     } 
+0

Как вы выражаете ваше желание быть хорошим программистом, позвольте мне дать вам совет: хороший программист всегда читает сообщение об ошибке. –

+0

@ Ваш общий смысл, да, сэр, вы абсолютно правы. Сначала я должен выполнить сообщение об ошибке. Спасибо за ваше предложение. Я очень благодарен за то, что у вас есть такой совет, как вы. –

+0

@ Ваш общий смысл. Не только время ответа на этот вопрос, но и я всегда должен следить за сообщением об ошибке, какие ошибки исходят из системы. Спасибо, сэр. Я рад, что встречаю такого человека, как ты, хотя это виртуальный мир. –