gpt4 book ai didi

php - SELECT 查询是否有可能在 Joomla DB 中插入数据?

转载 作者:行者123 更新时间:2023-11-29 08:19:06 25 4
gpt4 key购买 nike

我需要检查一个值是否在数据库中。我正在使用

$db = JFactory::getDBO();
$query = $db->getQuery( true );

$query->select($db->quoteName('id'));
$query->from($db->quoteName('#__tablename'));
$query->where($db->quoteName('fieldname') . ' = ' . $db->quoteName($valuetocheck));
$db->setQuery($query);
$id = $db->loadResult();

echo "value = " . $id;

if($id) {/*action if the value already exists*/} else {/*...*/}

问题是我设置为 $valuetocheck 的每个新值实际上都被插入到表中。如果我设置的值尚不存在,则会插入该值,因此我始终会获得有效的 $id 并且无法继续执行 else {}

这可能吗?是否有任何解决方法来检查值是否已在其中?

最佳答案

试试这个,

SELECT 查询永远不会向数据库插入任何值。如果数据插入到表中,则它应该位于其他位置。另外,您可以检查 numrows ,而不是检查 $id 值,如下所示。

$db = JFactory::getDBO();
$query = $db->getQuery( true );

$query->select($db->quoteName('id'));
$query->from($db->quoteName('#__tablename'));
$query->where($db->quoteName('fieldname') . ' = ' . $db->quoteName($valuetocheck));
$db->setQuery($query);
$db->query();
if($db->getNumRows() >0){
//Data found
}
else{
//Nod Data found
}

希望有帮助..

关于php - SELECT 查询是否有可能在 Joomla DB 中插入数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19923120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com