我正在尝试将数据插入表中,但是出现此错误 - 可捕获的致命错误:类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);
}
}
}
?>
以下是整个计划
$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);
}
}
}
?>
答案 0 :(得分:0)
对不起以前的回答。希望现在它将解决问题。
$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);
}
答案 1 :(得分:-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)";