Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.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 从数据库获取查询-Codeigniter_Php_Mysql_Codeigniter_Codeigniter 2_Codeigniter 3 - Fatal编程技术网

Php 从数据库获取查询-Codeigniter

Php 从数据库获取查询-Codeigniter,php,mysql,codeigniter,codeigniter-2,codeigniter-3,Php,Mysql,Codeigniter,Codeigniter 2,Codeigniter 3,我想检查数据库中是否存在用户名, 但Codeigniter正在抛出一个 错误:无法在写入上下文中使用方法返回值。 代码如下: public function check_username_exists($username){ $query = $this->db->get_where('users', array('username' => $username)); if(empty($query->row_array())){ retur

我想检查数据库中是否存在用户名, 但Codeigniter正在抛出一个

错误:无法在写入上下文中使用方法返回值。 代码如下:

public function check_username_exists($username){
    $query = $this->db->get_where('users', array('username' => $username));
    if(empty($query->row_array())){
        return true;
    }else{
        return false;
    }
}
尝试使用下面的代码

public function check_username_exists($username){
 $query = $this->db->get_where('users', array('username' => $username));
            if($query->num_rows() > 0){
                return true;
            }else{
                return false;
            }
        }
尝试使用下面的代码

public function check_username_exists($username){
 $query = $this->db->get_where('users', array('username' => $username));
            if($query->num_rows() > 0){
                return true;
            }else{
                return false;
            }
        }

看起来您正在尝试验证用于用户注册的表单。如果是这种情况,那么您最好使用内置的form_验证库()。已经有一个内置方法可以帮助您确保您拥有唯一的记录(例如用户名)。因此,基本上,一旦加载了
表单验证
库,就需要设置验证规则。一旦设置了规则,您就可以调用
run()
方法,无论是否通过验证,该方法都将生成bool true/false

$this->load->library('form_validation');
$this->form_validation->set_rules('username', 'Username', "trim|required|is_unique[users.username]");
if($this->form_validation->run() === true) {
    //Do something when posted form is validated
} else {
    // There were errors or this is the first time
    if(validation_errors())
        $data['error_message'] = validation_errors();
}
您应该使用表单验证库来验证整个应用程序中的任何(通常是所有)表单


希望这有帮助

看起来您正在尝试验证用于用户注册的表单。如果是这种情况,那么您最好使用内置的form_验证库()。已经有一个内置方法可以帮助您确保您拥有唯一的记录(例如用户名)。因此,基本上,一旦加载了
表单验证
库,就需要设置验证规则。一旦设置了规则,您就可以调用
run()
方法,无论是否通过验证,该方法都将生成bool true/false

$this->load->library('form_validation');
$this->form_validation->set_rules('username', 'Username', "trim|required|is_unique[users.username]");
if($this->form_validation->run() === true) {
    //Do something when posted form is validated
} else {
    // There were errors or this is the first time
    if(validation_errors())
        $data['error_message'] = validation_errors();
}
您应该使用表单验证库来验证整个应用程序中的任何(通常是所有)表单


希望这有助于首先理解错误:无法在写入上下文中使用方法返回值。

empty()
需要通过引用访问该值(以检查该引用是否指向存在的对象)

然而,真正的问题是您使用empty(),错误地认为“empty”值与“false”不同

Empty只是
的别名!伊塞特($thing)| |$东西
。当您要检查的内容始终存在时(在PHP中,函数调用的结果始终存在),则
empty()
函数只不过是一个否定运算符

正如Scott Miller建议的那样,您可以使用CodeIgniter验证。如果您想要一个高级的解决方案,那么您可以通过创建
form\u validation.php
将您的验证放在config文件夹中,有关更多详细信息,请访问CodeIgniter文档

如果您想对查询执行此操作,那么以下是查询:

public function check_username_exists($username){
    $query = $this->db->get_where('users', array('username' => $username));
    if ($query->num_rows() > 0){
        return true;
    }
    else{
        return false;
    }
}

您可以使用
num\u rows
获取用户名是否存在。

首先了解错误:无法在写入上下文中使用方法返回值。

empty()
需要通过引用访问该值(以检查该引用是否指向存在的对象)

然而,真正的问题是您使用empty(),错误地认为“empty”值与“false”不同

Empty只是
的别名!伊塞特($thing)| |$东西
。当您要检查的内容始终存在时(在PHP中,函数调用的结果始终存在),则
empty()
函数只不过是一个否定运算符

正如Scott Miller建议的那样,您可以使用CodeIgniter验证。如果您想要一个高级的解决方案,那么您可以通过创建
form\u validation.php
将您的验证放在config文件夹中,有关更多详细信息,请访问CodeIgniter文档

如果您想对查询执行此操作,那么以下是查询:

public function check_username_exists($username){
    $query = $this->db->get_where('users', array('username' => $username));
    if ($query->num_rows() > 0){
        return true;
    }
    else{
        return false;
    }
}

您可以使用
num\u rows
获取用户名是否存在。

仅空变量仅空变量谢谢。那很有帮助,谢谢你。这很有帮助