【发布时间】:2018-03-27 01:13:54
【问题描述】:
我想用 PHP 获取下一个自动增量 ID。我在 mysql 中运行查询并需要结果:
column name: auto_increment value = 122
但我收到了通知:
试图获取非对象的属性'auto_increment'
public function findNextAutoIncrementId()
{
$db = config::getConnexion();
$sql = 'SELECT `auto_increment` FROM INFORMATION_SCHEMA.TABLES
WHERE table_name = newsarticle';
$req = $db->prepare($sql);
$req->execute();
$result = $req->fetch(PDO::FETCH_OBJ);
return $result;
}
// when i use it i get Notice: Trying to get property 'auto_increment' of non-object
$result=$sujetC->findNextAutoIncrementId();
echo "this is : ".$result->auto_increment;
[编辑]:当我问这个问题时,我想找到下一个“新闻文章”对象,该对象将在插入操作之后和显示之前创建以执行一些功能。我应该做的是创建一个函数,在使用特定属性创建特定“新闻文章”后搜索它
【问题讨论】:
-
我想获得下一个 id,所以当我要添加新的新闻文章时。它保存了照片名+id
-
不要那样做。这点我怎么强调都不过分。如果您尝试猜测下一个 ID [并且它是 猜测],则无法保证没有另一个同时请求在做完全相同的事情,猜测完全相同的 ID。防止这种情况是 90% 还是 AUTO_INCREMENT 的原因。
-
如果我不使用文章 ID,我应该如何命名与文章相关的照片?
-
阅读我在第一条评论中链接的文档。