Возможный дубликат:
mysql_fetch_array () ожидает, что параметр 1 будет ресурсом, boolean задан в select
что случилось с этой линией?
23. $result = mysql_query("INSERT INTO $tbl_name('city_id', 'city', 'state_id') VALUES('NULL, '.$city.","', '4421'') or die(mysql_error())");
Я получаю это сообщение об ошибке каждый раз:
Предупреждение: mysql_query () ожидает, что параметр 2 будет ресурсом, строка указана в строке 23
Этот мой полный код
<?php // Get values from form $city = explode(',', $_POST['city']); //create a loop if(isset($_POST['city'])) { $city = explode(',', $_POST['city']); $n = count($city); for($i=0; $i<$n; $i++) { $result = mysql_query("INSERT INTO $tbl_name(city_id, city, state_id) VALUES(NULL, '.$city.","', '4421')") or die(mysql_error()); } } if($result) { header('Location: index.html'); } ?>
Это связано с неправильным синтаксисом, и имена столбцов в запросе INSERT не должны быть заключены в кавычки: try
$result = mysql_query("INSERT INTO ".$tbl_name."(city_id, city, state_id) VALUES(NULL, '".$city."','4421') or die(mysql_error()";
"
после after '4421'')
и синтаксис неверен! Заменить:
'NULL, '.$city.","', '4421'') or die(mysql_error())");
С
'NULL, '.$city.","', '4421'')") or die(mysql_error());
mysql_query("INSERT INTO $tbl_name(city_id, city, state_id) VALUES(NULL, ".$city.",'4421')") or die(mysql_error());
Попробуй это.
or die()
– это php-конструкция – вы упустили скобку, которая означала, что она попала в запрос sql.
Вот почему ваша ошибка думает, что mysql_query()
имеет второй параметр.
Ваш запрос будет таким, как это
mysql_query("INSERT INTO $tbl_name(city_id, city, state_id) VALUES('NULL, '.$city.","', '4421'") or die(mysql_error()));
Столбцы без запятых
попробуйте mysql_query("INSERT INTO ".$tbl_name."(city_id, city, state_id) VALUES(NULL,'".$city."','4421')") or die(mysql_error());
я думаю, это должно сработать таким образом.