Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.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登录,无法继续会话_Php_Mysql_Database_Session_Login - Fatal编程技术网

Php登录,无法继续会话

Php登录,无法继续会话,php,mysql,database,session,login,Php,Mysql,Database,Session,Login,因此,基本上我正在尝试运行一个登录系统,并使用用户的数据实时更新页面,不幸的是,我无法继续会话,每次尝试回显用户时都没有发生任何事情,下面是我的登录代码 <?php $host="IPADRESS"; // Host name $username="web11-sign-up"; // Mysql username $password="w0lfbane01#"; // Mysql password $db_name="web11-sign-up"; // Database

因此,基本上我正在尝试运行一个登录系统,并使用用户的数据实时更新页面,不幸的是,我无法继续会话,每次尝试回显用户时都没有发生任何事情,下面是我的登录代码

    <?php

$host="IPADRESS"; // Host name 
$username="web11-sign-up"; // Mysql username 
$password="w0lfbane01#"; // Mysql password 
$db_name="web11-sign-up"; // Database name 
$tbl_name="members"; // Table name 

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// username and password sent from form 
$myusername=$_POST['myusername']; 
$mypassword=$_POST['mypassword']; 

// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$mypassword = md5($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=mysql_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){

// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION["$myusername"];
$_SESSION["$mypassword"]; 
header("location:Scene-Selection/");
}
else {
echo "Wrong Username or Password";
}
?>
直到我开始在网站的另一个部分工作,我才意识到这个部分不起作用。我无法从数据库中检索任何信息。

您忘记了

 session_start();

在页面顶部。

您是否在每页顶部开始会话

确保您正在调用会话\u start;在你想使用会话的每个页面顶部的某个地方

我个人在每个页面的顶部都包含一个application.php,其中包含数据库连接详细信息、会话_start;,全局函数等。

您缺少

会议开始;在会议的顶部

您还可以从以下位置更改登录:

// Register $myusername, $mypassword and redirect to file "login_success.php"
$_SESSION["$myusername"];
$_SESSION["$mypassword"]; 
致:

然后贯穿你的其他页面;执行以下操作:

include "Session.php"; 
Session.php:


您是否在每个使用会话数据的页面顶部添加了php函数session_start?是的,我想知道是否需要使session_start更具体,因为它似乎不记得是谁记录的in@MattCornell它不是因为您没有初始化会话而“记住”登录的用户,因此,您正在向一个在您告诉它之前不存在的全球组织写信。于是会议开始了;在您的整个页面感谢大家的快速响应,我已经做了一些更改,包括Session.php,感谢大家的反馈,我做了一个print\r$\u会话;出口发现事实上,它正在将用户的想法转移到下一页,我终于可以在今晚睡觉了^ u^;谢谢你的帮助,这几天我一直在绕圈子。没问题,谢谢你接受我的答案:我的答案:谢谢你的回答,它真的帮助了我。现在我只需要调用使用AJAX、Java、Php和Mysql的数据,不应该太难吧pNo问题,您是否对登录页面进行了建议的更改?不是将用户名分配给密钥,而是将密钥分配给一个已知的名称和包含特定用户数据的值?是的,我做了这些更改,我按照您所说的将密钥分配给已知的名称,这更容易进行,谢谢:他可能已经在1页的顶部包括了这一点,但是如果要在第二个页面上工作,它也必须位于该页面的顶部……事实上,我通常会创建一个名为common.php的文件,并将其包含在需要访问任何db/session资源的顶部。
include "Session.php"; 
start_session();

if (!isset($_SESSION['Username']))
{
 include "Logout.php"; 
 exit;
// session is not set, so enforce logout
}