Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.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 MySQL错误-未知列-需要编辑_Php_Mysql_Sql - Fatal编程技术网

Php MySQL错误-未知列-需要编辑

Php MySQL错误-未知列-需要编辑,php,mysql,sql,Php,Mysql,Sql,谢谢你的阅读 通读这里的所有文章帮助我找到了问题所在,我只是不确定该如何编辑代码。我还在学习 我得到的信息是: SELECT attachid FROM ilace_attachment WHERE attachtype = 'ads' AND user_id ='6' AND ads_id='1' MySQL Error : Unknown column 'ads_id' in 'where clause' Error Number : 1054 这一切都是在我将软件脚本升级到新版本后

谢谢你的阅读

通读这里的所有文章帮助我找到了问题所在,我只是不确定该如何编辑代码。我还在学习

我得到的信息是:

SELECT attachid
FROM ilace_attachment WHERE attachtype = 'ads' AND user_id ='6' AND ads_id='1'


MySQL Error  : Unknown column 'ads_id' in 'where clause'
Error Number : 1054
这一切都是在我将软件脚本升级到新版本后开始的。我检查了MYSQL中的ads\u ads,没有一个用于ads\u id的列,只有一个名为;身份证

我相信解决我问题的办法是把“广告id”改成“id”。但我不确定这是否正确,或者我应该改变什么

  $sql = $ilace->db->query("SHOW TABLE STATUS LIKE '". DB_PREFIX ."ads_ads'");
  $ads_id_temp = $ilace->db->fetch_array($sql);
  $ads_id=$ads_id_temp['Auto_increment'];
}
else
{
  $ads_id=$ilace->GPC['id'];
}
$attachid = $ilace->db->fetch_field(DB_PREFIX . "attachment", "attachtype = '".'ads'."' AND user_id ='".$_SESSION['ilacedata']['user']['userid']."' AND ads_id='".$ads_id."'", "attachid");
这是它运行的脚本

http//wwwWEBSITEcom/campaign.php?id=0&cmd=_create-    campaign&1=Advertise+here+for+%245.00+per+1000+views&2=Targeted+AdTITLENAME+adverts&3=http%3A%2F%2FwwwWEBSITEcom%2Fcampaign.php%3Fcmd%3Dcreate%26mode%3Dppc&4=Vist&zone=header&mode=PPI&clicks=0&5=1&keywords=KEYWORD1%2C+was%2C+KEYWORD2%2C+KETWORD3%2C+KEYWORD4&dotw[1]=1&dotw[2]=1&dotw[3]=1&dotw[4]=1&dotw[5]=1&dotw[6]=1&dotw[0]=1

视情况而定。id列是否包含与ads_id相同的信息?如果是,你应该改变它。如果没有,您应该弄清楚ID发生了什么,以及它们被删除的原因

您将
和ads\u id=
更改为
和id=
,因为这是SQL语句中的字段名,而且字段名似乎已经更改。 您不需要更改
$ads_id
,因为这是PHP变量的名称,它可以正常工作,不需要与字段名相同

在更广泛的层面上,您应该坐下来研究PHP引用的最后一行是如何将错误中引用的SQL语句组合在一起的。您应该知道,
用于将字符串连接在一起,PHP字符串必须以相同的字符开头和结尾,但可以是
'
,并且SQL语句需要
'
左右的值


此外,如果您更新了第三方软件脚本,但该脚本现在与您的数据库不兼容,则应查看是否存在未运行的某种数据迁移脚本。

这正是错误的意思。您没有标题为“ads\U id”的列。至少不在该级别。如果是,列ads\U id的名称是什么试着这样做
ads\u id
=1So,创建
ads\u id
列。您好。这个脚本在升级之前工作得很好。升级数据库时,我没有更改任何东西,只更改站点文件。我的问题是,如果ads\u id需要只是id,我应该更改代码的哪一部分?所有说明ads\u id只是id的东西?您能给我看一个吗n示例代码?我尝试将和ads_id=更改为id=。但没有成功。下面是它所说的。MySQL错误:where子句中的未知列'id'错误号:1054您之前说过“我在MySQL中检查了ads_ads,没有一个列用于ads_id,只调用了一个;id.“我再次查看了你的帖子,我意识到该表实际上是
附件
。该表中的id字段叫什么?我有“user\u id”“在那张桌子上。呃,我们知道。
ilace\u附件
表中的所有列是什么?那里可能应该有一个
ads\u id
列,但我不知道这个脚本在做什么。如果你还没有读过,请阅读我答案的最后一段。