Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php '中的未知列;字段列表';,在db中,更改字段名称后_Php_Mysql_Fieldlist - Fatal编程技术网

Php '中的未知列;字段列表';,在db中,更改字段名称后

Php '中的未知列;字段列表';,在db中,更改字段名称后,php,mysql,fieldlist,Php,Mysql,Fieldlist,我有一个使用数据库(www.eqtraders.com)的网站,它使用PHP和MySQL运行 似乎主机最近更新了PHP,现在“yield”是PHP中的一个预定义关键字。 所以我到处都去了,把所有关于产量的字段都改成了r_产量。然后,我将数据库字段名更改为r\u yield 我确信代码正在发送以下查询: INSERT INTO recipes (item_id, r_yield, tradeskill, restriction, triv_low, triv_high, date_added, t

我有一个使用数据库(www.eqtraders.com)的网站,它使用PHP和MySQL运行

似乎主机最近更新了PHP,现在“yield”是PHP中的一个
预定义关键字。
所以我到处都去了,把所有关于产量的字段都改成了r_产量。然后,我将数据库字段名更改为
r\u yield

我确信代码正在发送以下查询:

INSERT INTO recipes (item_id, r_yield, tradeskill, restriction, triv_low, triv_high, date_added, triv_display) VALUES ("51998", "1", "Spell Research", NULL, "432", "432", "2015:11:04", "432")
对于这个,我得到了一个错误:

“字段列表”中的未知列“r_产量”,单位为db:recipes

PHPMySQL
报告字段名称为r_产量(除配方外,还有两个表也需要更改)


有人对我可能需要做什么有什么建议吗?

在示例代码中,“item\u id”和“r\u yield”的用法不太清楚,它们可能是常量或字符串

问题在于PHP方面。我建议:

  • 您可以将MySQL表中的列重新命名为“yield”,因为首先不需要修改它,“yield”是一个PHP关键字,而不是MySQL关键字

  • PHP代码中的字符串使用单引号:

    $rs = $data['item_id'];
    $rs_temp_data['item_id'] = $rsdata['item_id'][$i];
    $rs_temp_data['yield'] = $rsdata['yield'][$i];
    

如果不能完全确定PHP关键字为什么会影响sql查询,请尝试清除数据库模型缓存,至少在从查询访问数据时使用字符串值
'yield'
结果“它是用PHP和MySQL运行的”信息量不大。你的网站是否在任何框架上运行?哪个版本?每个框架都有自己处理数据库的方法,所以请提供这些信息。在Apache版本2.4.17上运行PHP版本5.6.14和MySQL版本5.5.46-cll。我承认自己是一个非常业余的人,尤其是几年前我写这段代码的时候。它在Apache版本2.4.17上运行PHP版本5.6.14和MySQL版本5.5.46-cll
没有框架。这是自定义代码。给出错误的几行代码(中间有很多代码)的示例是
extract($\u GET);摘录(元);;提取($\u服务器);如果(isset($data)&&isset($rsdata)&&isset($rcdata)){$rs=$data[item_id];对于($i=0;$i),这就是我最后要做的。谢谢!