有一百个问题都与此错误有关。每一个我都经历过……两次。
去年我一直在使用 PHP 和 MySQL 开发一个非常强大的客户端管理系统,现在已经接近尾声了。这个错误时不时地就会出现,这让我抓狂。
我还有另外三个示例,该代码可以在我网站的其他部分完美运行。我将其复制并发布到一个新页面,更改了一些变量,MySQL 毫无疑问地要求检查引号,并且我的版本可能是错误的。我正在拔头发......请帮忙!
// Update existing contact list
if(count($_POST['existing_contact']) > 0){
foreach ($_POST['existing_contact'] as $exist_contact) {
mysql_query("UPDATE `contact_lists` SET
contact_lists.sequence = '".mysql_real_escape_string($exist_contact['sequence'])."' ,
contact_lists.name = '".mysql_real_escape_string($exist_contact['name'])."' ,
contact_lists.primary_phone = '".mysql_real_escape_string($exist_contact['primary_type'])."' ,
contact_lists.primary_type = '".mysql_real_escape_string($exist_contact['primary_type'])."' ,
contact_lists.secondary_phone = '".mysql_real_escape_string($exist_contact['secondary_phone'])."' ,
contact_lists.secondary_type = '".mysql_real_escape_string($exist_contact['secondary_type'])."' ,
contact_lists.panel_code = '".mysql_real_escape_string($exist_contact['panel_code'])."' ,
contact_lists.password = '".mysql_real_escape_string($exist_contact['contact_password'])."'
WHERE `id` = ".mysql_real_escape_string($exist_contact['contact_identifier'])."")
or die(mysql_error("<font size='-1' face='Verdana, Geneva, sans-serif'>Can't connect to MySQL. Please try again.</font>"));
};
};
这是我从 phpMyAdmin 得到的
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'sequence'])."' ,
contact_lists.name = '".mysql_real_escape_string($ex' at line 2
我发誓这段带有不同变量的代码正在我网站上的两个或三个其他位置运行。如果你在这里看到任何不寻常的东西,请给我指出正确的方向。谢谢!
编辑------
这是复制并粘贴的原始代码。 (当然,有可变的变化)
// Update existing zone list
if(count($_POST['existing_zone']) > 0){
foreach ($_POST['existing_zone'] as $exist_zone) {
if($exist_zone['zone_exists'] == TRUE) { $zone_exists_checked = "1"; } else { $zone_exists_checked = "0"; };
mysql_query("UPDATE `zone_lists` SET
zone_lists.zone_number = '".mysql_real_escape_string($exist_zone['zone_number'])."' ,
zone_lists.zone_description = '".mysql_real_escape_string($exist_zone['zone_description'])."' ,
zone_lists.zone_existing = '".mysql_real_escape_string($zone_exists_checked)."'
WHERE `id` = ".mysql_real_escape_string($exist_zone['zone_list_identifier'])."")
or die(mysql_error("<font size='-1' face='Verdana, Geneva, sans-serif'>Can't connect to MySQL. Please try again.</font>"));
};
};
最佳答案
mysql_error
仅将资源作为其参数(使用 mysql_connect()
创建的资源)。您正在尝试提供一个字符串。
您可能在其他地方工作的是:
or die("<font size='-1' face='Verdana, Geneva, sans-serif'>Can't connect to MySQL. Please try again.</font>");
关于PHP/MySQL - mysql_error() : supplied argument is not a valid MySQL-Link resource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9650784/