Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php mysql插入查询突然停止工作?_Php_Mysql_Joomla - Fatal编程技术网

Php mysql插入查询突然停止工作?

Php mysql插入查询突然停止工作?,php,mysql,joomla,Php,Mysql,Joomla,下面的查询以前工作过,但现在出现错误 返回的错误是“字段列表”中的1054未知列“$variable1” 使用Joomla中的代码并使用Joomla数据库连接访问同一服务器上的非Joomla数据库 public function add_client($variable1, $variable2, $variable3){ $db = $this->getDbo(); $columns = array('field1', 'field2', 'field3', 'field

下面的查询以前工作过,但现在出现错误

返回的错误是“字段列表”中的
1054未知列“$variable1”

使用Joomla中的代码并使用Joomla数据库连接访问同一服务器上的非Joomla数据库

public function add_client($variable1, $variable2, $variable3){
    $db = $this->getDbo();
    $columns = array('field1', 'field2', 'field3', 'field4', 'field5', 'field6');
    $values = array($variable1, $variable2, $variable3, '12', '24', '1');
    $query = $db->getQuery(true)
        ->insert($db->quoteName('#__clients'))
        ->columns($db->quoteName($columns))
        ->values(implode(',', $values));
    $db->setQuery($query);
    if($db->execute()){
        return "The record was added successfully";
    }else{
        return "There was an error adding the record";
    }
}

这个问题是由于变量在变为数字之前是文本

下面的解决方案

public function add_client($variable1, $variable2, $variable3){
$db = $this->getDbo();
$columns = array('field1', 'field2', 'field3', 'field4', 'field5', 'field6');
$values = array($db->quote($variable1), $db->quote($variable2), $db->quote($variable3), '12', '24', '1');
$query = $db->getQuery(true)
    ->insert($db->quoteName('#__clients'))
    ->columns($db->quoteName($columns))
    ->values(implode(',', $values));
$db->setQuery($query);
if($db->execute()){
    return "The record was added successfully";
}else{
    return "There was an error adding the record";
     }
}

您使用的是哪种类型的数据库连接?我以前从未见过这些函数,比如
getQuery
我打赌
$variable1
$variable2
,或者
$variable3
是一个字符串,需要引用。您需要使用将使用参数绑定的DB库。在哪里设置变量
$variable1
$variable2
,以及
$variable3
?您使用的是什么数据库库?这是Joomla吗?@aynber错误表明变量名是在某个地方传递的,它需要一个列名。根据,值数组需要使用
$db->quote