This question already has answers here:
mysql_query() expects parameter 1 to be string, resource given [duplicate]
                                
                                    (7个答案)
                                
                        
                                5年前关闭。
            
                    
警告:mysql_real_escape_string()期望参数1为字符串,第94行的E:\ wamp \ www \ inventory \ admin \ dashboard \ insert_export.php中提供的资源

我了解错误,但如何纠正错误,有人可以建议我解释一下。

<?php
include 'connection/db_connection.php';
$row_data = array();
foreach($_POST['productname'] as $row=>$productname) {
$date=$_POST['datetime'];
$subject=$_POST['subject'];
$productname=mysql_real_escape_string($con,$productname);
$itemcode=mysql_real_escape_string($con,($_POST['itemcode'][$row]));
$quantity=mysql_real_escape_string($con,($_POST['quantity'][$row]));



$row_data[] = "('$date','$productname', '$itemcode', '$quantity','$subject')";
}
if (!empty($row_data))
 {
$sql = 'INSERT INTO admin_export(datetime, product_name, item_code,quantity,subject) VALUES '.implode(',', $row_data);
$result = mysql_query($sql );

if ($result)
echo 'Successful inserts: ' . mysql_affected_rows($con);
else
echo 'query failed' ;
}


?>

最佳答案

您的订单顺序错误。它应该是:

$string = mysql_real_escape_string(STRING, $con);


上面是伪代码



更严肃的说明。

请注意使用PDO / MySQLi而不是mysql_*函数,因为mysql_*库已被弃用,不再有用。

关于php - 警告:mysql_real_escape_string()期望参数1为字符串,资源在[duplicate]中给出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27833997/

10-12 00:04