Я очень новичок в PHP.Как проверить существующие строки в таблице базы данных
Может кто-нибудь, пожалуйста, проверьте этот код и скажите мне, в чем проблема.
<?php
require_once 'excel_reader2.php';
$data = new Spreadsheet_Excel_Reader("NZ_Price_List.xls");
error_reporting(E_ALL^E_NOTICE);
//start mysql connection
$con=mysqli_connect("localhost","root","ebooks3","newlocalabc");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
for($i=1;$i < $data->rowcount();$i++)
{
$p = $data->val($i,'A');
$sql = sprintf("select count(*) as cnt from products where `isbn` = '%s'", mysql_real_escape_string($p));
$row_dup = mysql_fetch_assoc(mysql_query($sql,$con));
if ($row_dup['cnt'] == 0) {
//insert
}
else{
//update
}
}
echo "hello done";
mysqli_close($con);
?>
Я пытаюсь сравнить значения из электронной таблицы Excel с базой данных. Если значение уже присутствует, то просто обновляйте или если значение не существует, тогда мне нужно переписать строку.
Я получаю следующее сообщение об ошибке:
mysql_fetch_assoc() ожидает параметр 1, чтобы быть ресурсом, нулевой данный
Некоторые пожалуйста, дайте мне как можно скорее.
Вы смешиваете вызовы базы данных mysql и mysqli, вам нужно исправить это для начала. Все они должны быть mysqli на основе вашего соединения – bumperbox
Возможный дубликат [Вставить в таблицу или обновить, если существует (MySQL)] (http://stackoverflow.com/questions/4205181/insert-to-table-or-update-if- exists-mysql) –