首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >var_dump返回null.The登录页,给出一个空白页面

var_dump返回null.The登录页,给出一个空白页面
EN

Stack Overflow用户
提问于 2021-01-08 16:41:30
回答 2查看 220关注 0票数 1

登录页面不工作。即使使用正确的电子邮件和密码,用户单击登录按钮后也会出现空白页。var_dump$_POST返回数组(10){“电子邮件”=> string(0)“=> string(0) "”登录“=> string(0) "uname"=> string(0)”name "“=> string(0) "”=> string(0) "“puname"=> string(0) "pname"=> string(0) "pemail"=> string(0) "Partnerpassword"=> string(0)”

这是我的密码

代码语言:javascript
复制
 <?php


   require_once("config.php");

   error_reporting(E_ALL); 
   ini_set('display_errors', 1);

   $id=$_POST['email'];

   $pass=$_POST['password'];
   var_dump($_POST);

  $stmt = $cn->prepare('SELECT Email,Password FROM register_partneruser WHERE Email = ? ');

  $stmt->bind_param('s', $id); 
  $stmt->execute();  




  $stmt->bind_result( $a,$Partnerpassword);

   if($stmt->fetch())

  {                                 
    //      var_dump($id,$a);

   //     var_dump($password,$Partnerpassword);

         if(password_verify($pass,$Partnerpassword))
      
        {
          
                echo "Login successfull"; 
         }
        else
        {
             echo"Login failed";
        }
              

     }


   else  
  {
      $error = "Username or Password is incorrect";
  }

?>

以下是登录表单的HTML代码片段

代码语言:javascript
复制
 <form class="js-validate" novalidate="novalidate" method="post">
                                        <!-- Login -->
                                        <div id="login" style="opacity: 1;" data-target-group="idForm" class="animated fadeIn">
                                            <!-- Header -->
                                            <div class="card-header text-center">
                                                <h3 class="h5 mb-0 font-weight-semi-bold">Login</h3>
                                            </div>
                                            <!-- End Header -->
                                            <div class="card-body pt-6 pb-4">
                                                <!-- Form Group -->
                                                <div class="form-group pb-1">
                                                    <div class="js-form-message js-focus-state border border-width-2 border-color-8 rounded-sm">
                                                        <label class="sr-only" for="signinSrEmail">Email</label>
                                                        <div class="input-group input-group-tranparent input-group-borderless input-group-radiusless">
                                                            <input type="email" class="form-control" name="email" id="signinSrEmail" placeholder="Email Or Username" aria-label="Email Or Username" aria-describedby="signinEmail" required="" data-msg="Please enter a valid email address." data-error-class="u-has-error" data-success-class="u-has-success">
                                                            <div class="input-group-append">
                                                                <span class="input-group-text" id="signinEmail">
                                                                    <span class="far fa-envelope font-size-20"></span>
                                                                </span>
                                                            </div>
                                                        </div>
                                                    </div>
                                                </div>
                                                <!-- End Form Group -->
                                                <!-- Form Group -->
                                                <div class="form-group pb-1">
                                                    <div class="js-form-message js-focus-state border border-width-2 border-color-8 rounded-sm">
                                                        <label class="sr-only" for="signinSrPassword">Password</label>
                                                        <div class="input-group input-group-tranparent input-group-borderless input-group-radiusless">
                                                            <input type="password" class="form-control" name="password" id="signinSrPassword" placeholder="Password" aria-label="Password" aria-describedby="signinPassword" required="" data-msg="Your password is invalid. Please try again." data-error-class="u-has-error" data-success-class="u-has-success">
                                                            <div class="input-group-prepend">
                                                                <span class="input-group-text" id="signinPassword">
                                                                    <span class="flaticon-password font-size-20"></span>
                                                                </span>
                                                            </div>
                                                        </div>
                                                    </div>
                                                </div>
                                                <!-- End Form Group -->
                                                <div class="mb-3 pb-1">
                                                    <button type="submit" name="login" formaction="../php/login.php"  method="post" class="btn btn-md btn-block btn-blue-1 rounded-xs font-weight-bold transition-3d-hover">Login</button>
                                                </div>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-01-09 13:19:18

你的问题错了吗?

在以下几个方面存在差异:

  • NULL被返回,

上没有任何返回。

由此产生了几个问题:

运行web服务器的

  1. 您确定您也有权设置error_reporting(E_ALL);error_reporting(E_ALL);吗?

删除数据库查询的代码和密码比较的代码,然后再次运行程序。

代码语言:javascript
复制
//$stmt = $cn->prepare('SELECT Email,Password FROM register_partneruser WHERE Email = ? ');
//$stmt->bind_param('s', $id); 
//$stmt->execute();
//$stmt->bind_result( $a,$Partnerpassword);
if( 1 ) //if($stmt->fetch())
{                                 
    //      var_dump($id,$a);
   //     var_dump($password,$Partnerpassword);    
        if( 1 ) //if(password_verify($pass,$Partnerpassword))
        {              
            echo "Login successfull"; 
        }
        else
        {
            echo"Login failed";
        }         
    }
else  
{
    $error = "Username or Password is incorrect";
}

程序现在应该在运行。无论用户是否登录,您都可以通过if(1)if(0)手动控制/仿真。

如果您的程序现在正在运行,错误不在此程序中,但是:

  • 有SQL错误
  • 或密码比较

有问题。

我假设Named Parameter是错误的,$stmt->bind_param('s', $id);:,因为它只在查询中被指定为?

您没有得到错误的原因是您无权通过PHP-script设置该-script。

编辑1以回答问题:

你没有回答我的问题:谁是网络服务器的主机?如果是您,则必须更改php.ini并启用error_reporting

否则,你必须看看你的网络主机的配置,如何启用它,或问他!

你的问题错了,!您应该问,我如何激活error_reporting,并给出必要的信息,哪里是托管,哪个php-版本,如果apache或其他!

票数 -1
EN

Stack Overflow用户

发布于 2021-01-08 18:36:25

您的代码看起来很好,实际上,输出--这是输出:

代码语言:javascript
复制
array(3) { ["email"]=> string(4) "test" ["password"]=> string(4) "test" ["login"]=> string(0) "" }

我猜你的config.php是有问题的。

试试这个,注释掉包含,注释掉var_dump之后的所有内容,如果您看到输出,那么该文件就是给您带来问题的文件。

编辑:尝试调试您的HTTP调用,可以使用铬调试器(f12->单击网络->单击保存日志->,打开站点并运行post)

你应该看到这样的东西:

呼叫:

代码语言:javascript
复制
http://127.0.0.1/projects/localweb/so/

GET http://127.0.0.1/projects/localweb/so/
sec-ch-ua: "Google Chrome";v="87", " Not;A Brand";v="99", "Chromium";v="87"
sec-ch-ua-mobile: ?0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9

HTTP/1.1 200 OK
Date: Fri, 08 Jan 2021 21:15:42 GMT
Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1g PHP/7.3.23
Last-Modified: Fri, 08 Jan 2021 21:02:47 GMT
ETag: "11c1-5b869e0e0b909"
Accept-Ranges: bytes
Content-Length: 4545
Content-Type: text/html
http://127.0.0.1/projects/action.php
email: email@email.com
login: 
password: password

POST http://127.0.0.1/projects/action.php
sec-ch-ua: "Google Chrome";v="87", " Not;A Brand";v="99", "Chromium";v="87"
sec-ch-ua-mobile: ?0
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9

HTTP/1.1 200 OK
Date: Fri, 08 Jan 2021 21:15:48 GMT
Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1g PHP/7.3.23
X-Powered-By: PHP/7.3.23
Content-Length: 127
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8

响应:数组(3){“电子邮件”=>字符串(15) "email@email.com“”密码“=>字符串(8)”密码“”登录“=> string(0)”“}

没有重定向或类似的东西。

您是在http或https上运行这个吗?发帖时是否将调用移动到https?http日志上还有其他重定向吗?

另外,检查一下您的.htaccess,也许您的htaccess正在重写某些东西,添加斜杠之类的,删除它以进行测试,以确保您有一些与代码无关的内容。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65632941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档