警告:mysql_real_escape_string()期望参数1为字符串,资源在

时间:2015-01-08 06:11:58

标签: php mysql

警告: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' ;
} 


?>

3 个答案:

答案 0 :(得分:2)

你的订单错误。它应该是:

$string = mysql_real_escape_string(STRING, $con);

上面是伪代码


更严肃的说明。

请查看使用PDO / MySQLi代替mysql_*函数,因为mysql_*库已被弃用且不再有用。

答案 1 :(得分:0)

未转义的字符串排在第一位。请参阅文档http://php.net/manual/en/function.mysql-real-escape-string.php

所以

$productname=mysql_real_escape_string($con,$productname);

应该是:

$productname=mysql_real_escape_string($productname, $con);

答案 2 :(得分:0)

此处未定义

$con。请检查您的文件db_connection.php那里提供的内容