gpt4 book ai didi

mysql - Joomla数据库查询3.2

转载 作者:行者123 更新时间:2023-11-29 08:07:22 24 4
gpt4 key购买 nike

您好,我正在尝试进行查询,使登录用户可以获得 pokalista 表 3 行的值。无法正确帮助任何人吗?

?php

$user = JFactory::getUser();
if ($user->guest)
{
echo "<h2>Login first.</h2>";
}
else
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('*');
$query->from($db->quoteName('fab_pokalista'));
// it should pickup current login user username and return 3th value of row
// name colum has same values that users real name
$query->where($db->quoteName('name')." = ".$db->quote('$user->name .'));
$db->setQuery($query);
$row = $db->loadRow();
echo "<h3>Hello:</h3><br />";
echo $user->name . '<br />';
echo "<h3>value of query:</h3>";
print_r($row[3]);
}
?>

最佳答案

您的 where 语句中存在引用错误以及多余的空格和句点,请参阅下一行中的粗体部分:

$query->where($db->quoteName('name')." = ".$db->quote( '$user->name .' ));

You're using single quotes around the variable reference $user->name if you want PHP to convert that to a value you need to either use double quotes " or you can remove them altogether.

With double quotes

$query->where($db->quoteName('name')." = ".$db->quote("$user->name"));

不带引号

    $query->where($db->quoteName('name') . " = " . $db->quote($user->name));


<?php
$user = JFactory::getUser();

if ($user->guest)
{
echo "<h2>Login first.</h2>";
}
else
{
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select('*');
$query->from($db->quoteName('fab_pokalista'));
// it should pickup current login user username and return 3th value of row
// name colum has same values that users real name
$query->where($db->quoteName('name') . " = " . $db->quote($user->name));
$db->setQuery($query);
$row = $db->loadRow();
echo "<h3>Hello:</h3><br />";
echo $user->name . '<br />';
echo "<h3>value of query:</h3>";
print_r($row[3]);
}

关于mysql - Joomla数据库查询3.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22434863/

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