字段列表中的列“id”不明确

时间:2012-07-29 01:33:25

标签: mysql

我收到以下错误,字段列表中的列'id'不明确。我怎样才能从这个声明中唯一地获取正确的ID

function data () {
if($at = mysql_real_escape_string(@$_GET['id'])){$at = mysql_real_escape_string(@$_GET['id']);

$arg = func_get_args();
unset($arg[0]);
$fields = '`'.implode('`,`', $arg).'`';
$query = mysql_query("SELECT $fields FROM `list` LEFT JOIN fruits ON location.id =  
fruits.fid     
LEFT JOIN store ON store.id = location.catid WHERE location.link = '$at'")or die(mysql_error());
$query_result = mysql_fetch_assoc($query);
$query_row = mysql_num_rows($query);
if($query_row==0){
return false;
}else{
foreach ($arg as $field){
$arg[$field] = $query_result[$field];
}return $arg;
}
}
}

3 个答案:

答案 0 :(得分:1)

$fields = '`list`.'.implode('`, `list`.`', $arg).'`';

但我强烈推荐Doctrine

答案 1 :(得分:0)

似乎是你的mysql查询中的一个问题。指定表格的名称以及字段名称将是我猜的最简单的解决方案:

$fields = 'tablename'.$fields;

答案 2 :(得分:0)

变成只更改表中id的名称更容易。