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