我在写一个脚本来将产品从csv文件上传到我的网站。我一直有一个问题,当我的if($result) echo "hi";
确实存在回显结果时,但如果我把if(!result)
或if(empty($result)
或if(!isset(result))
将无法回显时没有结果...在我的productlist.txt代码列表中有3产品代码,其中2个在数据库中,当我有if($ result)时,它会回显2'hi',但如果我有if(!result)什么都没有回声,那么它应该回显1 hi。PHP脚本不能识别缺失的变量
while($data = fgetcsv($handle)) {
//Gets products to be added from txt file.
$codes = explode("\n", file_get_contents("productlist.txt"));
foreach($codes as $code) {
if($data[3] == $code) {
$name = $data[2];
$model = $data[3];
$description = strip_tags($data[6]);
echo $price = round($data[7] + 20 + (0.05 * $data[7])) - 0.05; echo "</br>";
$image = "data/W_Sexy_Lingerie_Series_Lingerie-Supplies/" . $model . ".jpg";
//Check to see if product already exists
$query = "SELECT `product_id` FROM `oc_product` WHERE `model`='$model'";
$result = $con->query($query);
if(empty($result)) echo "hi";
break;
//Insert product information
$query = "INSERT INTO `oc_product` (`model`, `quantity`, `image`, `price`, `status`) VALUES
('$model', '5', '$image', '$price', 1)";
if (!$con->query($query)) {
echo $con->error;
}
//Get product ID
$query = "SELECT `product_id` FROM `oc_product` WHERE `model`='$model'";
$result = $con->query($query);
$rows = $result->fetch_array();
$product_id = $rows[0];
//Insert product category
$query = "INSERT INTO `oc_product_to_category` (`product_id`, `category_id`) VALUES ('$product_id', 59)";
if (!$con->query($query)) {
echo $con->error;
}
//Insert product description
$query = "INSERT INTO `oc_product_description` (`product_id`, `language_id`, `name`, `description`,"; $query .= " `meta_description`, `meta_keyword`)";
$query .= " VALUES ('$product_id', 1, '$name', '$description', '$description', '$description')";
if (!$con->query($query)) {
echo $con->error;
}
}
}
}
}
newProducts($handle,$con);
查询()可能返回你一个不同类型的对象,而不是真/假结果。 –
当出现错误时,查询通常返回'null'或'false' – DevZer0
那么vardump显示我只返回2个$结果。 – Melbourne2991