Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.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 Can';我的登录功能无法正常工作。请帮忙。词_Php_Forms_Codeigniter_Submit - Fatal编程技术网

Php Can';我的登录功能无法正常工作。请帮忙。词

Php Can';我的登录功能无法正常工作。请帮忙。词,php,forms,codeigniter,submit,Php,Forms,Codeigniter,Submit,我回来问另一个问题:(.我正在尝试创建我的登录功能,但由于某种原因它无法启动。我已经盯着代码看了两个小时,似乎没有发现问题。我得到的结果只是一个空白页@http://localhost:8888/core/login_wax。当我单击登录!按钮@http://localhost:8888/core。我希望你们中至少有一个人能发现问题并告诉我。我真的非常感谢我在这里得到的所有帮助。谢谢 在数据库中,我有一个名为users的表,其中有4行id、name、password和email 控制器-核心 &

我回来问另一个问题:(.我正在尝试创建我的登录功能,但由于某种原因它无法启动。我已经盯着代码看了两个小时,似乎没有发现问题。我得到的结果只是一个空白页@
http://localhost:8888/core/login_wax
。当我单击
登录!
按钮@
http://localhost:8888/core
。我希望你们中至少有一个人能发现问题并告诉我。我真的非常感谢我在这里得到的所有帮助。谢谢

在数据库中,我有一个名为
users
的表,其中有4行
id
name
password
email

控制器-核心

<?php
class Core extends CI_Controller {

    public function __construct() {

        parent::__construct();   
    }

    public function index() {
        $data = array('loggedV' => 'false');
        $this->load->view('core_v', $data);
    }

    public function login_wax() {
            $name = $this->input->post('login_name_field');
            $password = $this->input->post('login_pw_field');
            $this->do_login($name, $password);
        }

    private function do_login($name, $password)
    {
        $this->load->model('User_m');
        $user_id = $this->User_m->get_user($name, $password);

        /* If user has been found */
        if($user_id) {

            $this->session->set_userdata('user_id', $user_id);

            /* Query that retrievs users name and assigns it to $user_name */

            $user_name = "James";
            $data = array('logged' => 'true', 'name' => $user_name);
            $this->load->view('core_v', $data);


        /* If user has NOT been found in the DB */  
        } else {
            /* Tell him the name or pw are wrong */
            $message = "Wrong Input";
        }
    }
<?php echo form_open('core/login_wax'); ?>
<input type="text" class="n_reset" name="login_name_field" id="name" value="Mail / Email"></input>
<input type="password" name="login_pw_field" value="password" class="p_reset" id="password">                    
<input type="submit" id="whatever" name="whatever" value="Log In!">
</form>

这应该是

    $this->load->model('user_m');
    $user_id = $this->user_m->get_user($name, $password);

以下是您当前代码中的错误:

使用

在你的控制器里

parent::__construct();
但这将解决这个问题-您需要在出现错误时看到它们

确保在主index.php文件中将环境设置为“development”。 确保php.ini设置为display_errors=On

确保在编写无效代码时,PHP错误确实会显示

编辑: 在do_login()函数中,当身份验证失败时,不会显示任何内容:

$message = "Wrong Input";
低于这个数字

echo $message;

看起来您很容易受到攻击-您直接从表单输入获取用户/通行证,并将其填充到查询中
$this->load->model('user\m')
,而不是
$this->load->model('user\m'))< /代码>我同意@ McCB。那么您得到的输出是什么?空页还是空白?尝试放入<代码> $--dB-> LastIQueQuy(;)/<代码> '$USELIDID= $]这-> USERM -> GETSUBLE($name,$Couple);“所以我们知道它实际上正在做正确的查询。我认为您不应该逃避您的<代码> \ $name”。
等等。更确切地说,使用单引号。一些简单的调试。比如函数内部的echo和die():一旦打开错误,并回显消息,请告诉我们之后会遇到什么问题。
parent::__construct();
$message = "Wrong Input";
echo $message;