Php 正在尝试创建用户配置文件,但遇到一些问题

Php 正在尝试创建用户配置文件,但遇到一些问题,php,Php,我对php非常陌生,我正在尝试创建一个用户配置文件来显示数据库中的信息。我的问题是,我一直从if语句的回音中得到“您需要指定一个用户名!” 你能告诉我为什么它没有显示用户名吗 下面是我的个人资料代码 <?php //check for a form submission if (isset($_GET['username'])){ $username = $_GET['username']; $q = "SELECT * FROM stude

我对php非常陌生,我正在尝试创建一个用户配置文件来显示数据库中的信息。我的问题是,我一直从if语句的回音中得到“您需要指定一个用户名!”

你能告诉我为什么它没有显示用户名吗

下面是我的个人资料代码

<?php
    //check for a form submission
    if (isset($_GET['username'])){
        $username = $_GET['username'];
        $q = "SELECT * FROM student WHERE username = '$username'";
        $r = mysqli_query($dbc, $q);

        if(mysqli_num_rows($r) == 1) {

            die ("that user name could not be found!");
        }
        while($row = mysqli_fetch_array($r, MYSQLI_ASSOC)){
            $firstname = $row['firstname'];
            $lastname = $row['lastname'];
            $age = $row['age'];
        }
?>
<?php
        } else die ("you need to specify a username!");
?>

下面是登录名

<?php 

# Database Connetion:
include('config/setup.php');  


# Loggin authentication
if($_POST) {

    $q = "SELECT * FROM student WHERE username = '$_POST[user]' AND password = SHA1('$_POST[password]')";
    $r = mysqli_query($dbc, $q);


    if( mysqli_num_rows($r) == 1) {

        $_SESSION['username'] = $_POST['user'];
        header('Location: profile.php');

    }


}

 ?>

下面是我的数据库连接和会话启动

<?php
//Setup File:

#Start Session:
session_start();

# Database Connection Here...
$dbc = mysqli_connect('localhost', 'dev', 'dev123', 'mvt') OR die ('Could not connect because: '.mysqli_connect_error());



?>

我在连接文件中设置会话开始,并使用下面的include函数调用它

很抱歉,如果我的代码很混乱,我是新来的PHP,我仍然试图掌握它



登录 用户名 密码 登录


标题('Location:profile.php')
正在重定向您的浏览器-因此profile.php将独立于其他代码执行。将其更改为
include('profile.php')
而不是
标题('Location:profile.php')
正在重定向浏览器-因此profile.php将独立于其他代码执行。改为
include('profile.php')
不知道,因为我们不知道上面的
如果(mysqli_num_rows($r)==1)
-最佳猜测;你的查询失败了,你需要找出原因。当你说你不知道上面是什么
if(mysqli_num_rows($r)==1)
你的确切意思是什么?这就是我所有的登录代码,我看到我忘了放开头的php标签,但除此之外,我的登录就只有这些了。好吧,没关系。我注意到你没有正确缩进你的代码,我编辑了它。问题是,
$\u GET['username']
从哪里来,以及
$\u POST[user]
等等?你也没有给我们看表格。有太多的未知。第一,如果用户成功创建并使用了SHA1(我建议您不要将其用于实时站点),并且您的表单不包含任何错误或缺少一些内容。我无法为您提供解决方案;你提供的和“没有”提供的都不是。检查PHP和查询中的错误,祝你好运。在打开PHP标记后立即将错误报告添加到文件顶部,例如
不知道,因为我们不知道上面的
如果(mysqli_num_rows($r)==1)
-最佳猜测;你的查询失败了,你需要找出原因。当你说你不知道上面是什么
if(mysqli_num_rows($r)==1)
你的确切意思是什么?这就是我所有的登录代码,我看到我忘了放开头的php标签,但除此之外,我的登录就只有这些了。好吧,没关系。我注意到你没有正确缩进你的代码,我编辑了它。问题是,
$\u GET['username']
从哪里来,以及
$\u POST[user]
等等?你也没有给我们看表格。有太多的未知。第一,如果用户成功创建并使用了SHA1(我建议您不要将其用于实时站点),并且您的表单不包含任何错误或缺少一些内容。我无法为您提供解决方案;你提供的和“没有”提供的都不是。检查PHP和查询中的错误,祝你好运。在打开PHP标记后立即在文件顶部添加错误报告。例如
我按照你说的做了,我不得不从我的配置文件中删除start_session(),因为它说已经启动了一个会话,但我对}session仍然有同样的问题(“你需要指定一个用户名!”);这就是我得到的全部。问题是,include是否应该将我重定向到profile.php,因为它不是,url说“尽管我看到了回音。谢谢,我会一直努力解决我的问题。我照你说的做了,我必须参加start_会话()从我的配置文件中,因为它说一个会话已经启动了,但我仍然有与}else die(“你需要指定一个用户名!”)相同的问题,因为这就是我所得到的。问题是,include是否应该将我重定向到profile.php,因为它不是,url说”“虽然我看到了回声。谢谢,我会继续努力解决我的问题。
<title><?php echo $page_title.' | '.$site_title; ?> </title>
<meta name="viewport" content="width=device-width, initial-scale=1">

<?php include('config/css.php'); ?>
<?php include('config/js.php'); ?>
  <div class="container">


  <div class="masthead">
    <h3 class="text-muted"></h3>
    <nav>
      <ul class="nav nav-justified">
        <li class="active"><a href="index.php">Home</a></li>
        <li><a href="#">Projects</a></li>
        <li><a href="#">Services</a></li>
        <li><a href="#">Downloads</a></li>
        <li><a href="#">About</a></li>
        <li><a href="#">Contact</a></li>
      </ul>
    </nav>
  </div>

    </div>



  <div class="container">

        <div class="row">


            <div class="col-md-4 col-md-offset-4">

                    <div class="panel panel-info">

                    <div class="panel-heading">
                        <strong>Login</strong> 
                    </div><!-- END Pannel heading -->


                        <div class="panel-body"> 



                            <form action="login.php" method="post">

                              <div class="form-group">
                                <label for="user">UserName</label>
                                <input type="text" class="form-control" id="user" name="user" placeholder="UserName">
                              </div>


                              <div class="form-group">
                                <label for="password">Password</label>
                                <input type="password" class="form-control" id="password" name="password" placeholder="Password">
                              </div>

                             <!--
                              <div class="checkbox">
                                <label>
                                  <input type="checkbox"> Check me out
                                </label>
                              </div>
                              --> 

                              <button type="submit" class="btn btn-default">Login</button>
                              <a href="registration.php">register</a>
                            </form> <!-- END of form -->

                        </div> <!-- END of pannel body -->

            </div><!-- END of Column -->

        </div><!-- END of ROW -->

        </div> <!-- END of container -->





<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>