我正在使用MySQL PHP类从表中获取最大ID。
$sql="SELECT MAX(id) FROM `".TABLE_CUSTOMERS."`";
$rows = $db->fetch_array($sql);
现在我想将最大id用作值并将其加1。
$maxid=rows[0];
$newid=maxid+1;
以上代码不起作用。
如果我在$ maxid上执行print_r,我会得到:
( [MAX(id)] => 5 )
在那之前,MySQL PHP类曾经这样做过:
$MaxID = mysql_query("SELECT MAX(face_id) FROM `".$DBprefix."faces`");
$MaxID = mysql_fetch_array($MaxID, MYSQL_BOTH);
$MaxID = $MaxID[0];
$newid=$MaxID+1;
这没有问题
这是fetch_array函数:
public function fetch_array($sql){
$query_id = $this->query($sql);
$out = array();
while ($row = $this->fetch($query_id)){
$out[] = $row;
}
$this->free_result($query_id);
return $out;
}
答案 0 :(得分:0)
使用此代码:
$maxid=$rows['MAX(id)'];
$newid=$maxid+1;
我希望它有所帮助;)
答案 1 :(得分:0)
尝试使用别名来定义最大值;
$sql="SELECT MAX(id) as `max` FROM `".TABLE_CUSTOMERS."`";
您应该能够在以下位置检索最大值:
$rows[0]['max'];
所以加1:
$newId = $rows[0]['max']+1;
答案 2 :(得分:0)
这个怎么样?
$sql="SELECT (MAX(id) + 1) AS max FROM `".TABLE_CUSTOMERS."`";