我正在创建一个配置文件页面和一个登录页面,在其中存储会话id,然后在配置文件文件中检查是否设置了isset,但我遇到的问题是,系统总是显示一条错误消息,并且我使用了print\r($\u session);浏览器显示:
重要数据丢失阵列([名字]=
如何修复此错误?????
<?php
session_start();
error_reporting(E_ALL);
require_once('include/connect.php');
$message = "";
if(!empty($_POST['email']))
{
$email = $_POST['email'];
$pass = $_POST['pass'];
$email = strip_tags($email);
$pass = strip_tags($pass);
$email = mysql_real_escape_string($email);
$pass = mysql_real_escape_string($pass);
//$pass = md5($pass);
$sql=mysql_query( "SELECT user_id, email_address, first_name FROM user WHERE email_address='$email'AND password='$pass'LIMIT 1") or die("error in user table");
$login_check = mysql_num_rows($sql);
if($login_check > 0)
{
$row = mysql_fetch_array($sql);
$id = $row['user_id'];
$_SESSION['user_id'] = $id;
$firstname = $row['first_name'];
$_SESSION['first_name']= $firstname;
$email = $row['email_address'];
$_SESSION['email_address']= $email;
mysql_query("UPDATE user SET last_log_date=now() WHERE user_id='$id'");
header("Location: profile.php");
}//close if
else
{
$message = "incorrect Email or Password!!";
//exit();
}
}//close if
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>RegisterPage</title>
<link href='http://fonts.googleapis.com/css?family=Oswald:400,300' rel='stylesheet' type='text/css' />
<link href='http://fonts.googleapis.com/css?family=Abel|Satisfy' rel='stylesheet' type='text/css' />
<link href="default.css" rel="stylesheet" type="text/css" media="all" />
</head>
<body>
<div id="loginborder">
<p style="color:#FF0000" align="left"><?php print("$message") ?></p>
<!--Login form where user submit his registered email and password-->
<form action="login.php" method="post">
email-address:<br />
<input type="text" name="email" placeholder="Email Adress" />
<br />
<br />
Password:<br />
<input type="password" name="pass" placeholder="Password" />
<br />
<br />
<input type="submit" name="login" value="Login" />
<a href="register.php" style="position: absolute; top: 132px; left: 61px;"> <strong> Register</strong></a>
</form>
</div>
<?php
session_start();
require_once('include/connect.php');
if(isset($_GET['user_id']))
{
$id=$_GET['user_id'];
var_dump($id);
}
elseif(isset($_SESSION['user_id']))
{
$id= $_SESSION['user_id'];
}
else
{
print "Important data are missing";
print_r($_SESSION);
exit();
}
$sql = mysql_query("SELECT * FROM user WHERE user_id='$id'") or die(mysql_error());
$row = mysql_fetch_array($sql);
$firstname=$row['first_name'];
$lastname=$row['last_name'];
$birth_date=$row['birth_date'];
$registered_date=$row['registered_date'];
//***************for upload img*****************//
$check_pic="members/$id/image01.jpg";
$default_pic="members/0/image01.jpg";
if(file_exists($check_pic))
{
$user_pic="<img src=\"$check_pic\"width=\"100px\"/>";
}
else
{
$user_pic="<img src=\"$default_pic\">";
}
echo $id, $firstname, $birth_date;
?>
您只需在会话变量[$\u session['username']]中存储一个值,然后在所有内容都签出后,使用会话中的值从mysql表中选择数据
----------------------------------比如说------------------------------------------------------
登录时。php
if($login_check > 0)
{
$_SESSION['email']=$email;//storing variable in SESSION
header("Location: profile.php");
}
else
{
$message = "incorrect Email or Password!!";
die();// kill the script
}
在侧面。php
<?php
session_start();// start session
require_once('include/connect.php'); //include connection file
$sql = mysql_query("SELECT * FROM user WHERE email='(mysql_real_escape_string($_SESSION['email']))'") or die(mysql_error());
$row = mysql_fetch_array($sql);
// then just echo all the data you need
?>
你需要改变几件事
首先:在您的请求中获得first_name和电子邮件
'SELECT user_id,email,first_name FROM user WHERE email_address='$email'AND password='$pass'LIMIT 1'
第二,删除while循环并执行
$row = mysql_fetch_array($sql);
您将结果限制为1个,因此无需在结果内部循环
更改$id=$\u会话['user\u id']
到$\u会话['user\u id']=$id
此外,将profile和remove循环的结果限制为1(用户id=
我使用Liferay MVC框架创建了一个简单的portlet,并为portlet设置添加了一个ConfigurationActionImpl类和Configuration.jsp。我已经使用标记来显示标签。 没有PACL就可以正常工作。 使用PACL时,它不会显示映射到属性文件中键的值。它显示的钥匙是完好无损的。与其他PACL错误一样,控制台中不会报告任何错误。 这两行是在我部署portlet时
我正在尝试在我的应用程序中实现注销,因此我做了以下操作: 但是当我检查用户是否登录时,它说是: 我错过什么了吗?在使会话无效后,我是否应该获得一个新的AuthorizedUser实例(sessionScoped)? 编辑:如果有人需要,添加getHandler;)
这就是我遇到麻烦的代码: 错误是: 当我执行脚本时,我没有任何chrome实例,当我使用它时没有选项,它工作正常。知道为什么会这样吗?请注意,我使用的是类似问题中提供的。 我用的是ChromeDriver 86.0.4240.22
我更改为配置文件和.htaccess文件。以下文件, Config.php .htaccess 重新启动发动机 秘书长/52322/ 重写Cond%{REQUEST_FILENAME}!-f 重写cond%{REQUEST_FILENAME}-D 重写规则 ^(.*)$ index.php?/1美元[L, QSA] 发生错误在此服务器上找不到请求的URL /52322/login/。 请帮帮我。
问题内容: 监视远程应用程序(使用jstatd)时,我既无法配置文件也无法监视CPU消耗。堆监视(假设我不使用G1)起作用。jvisualvm提供消息“此JVM不支持”。在CPU图形窗口中。 我的设置中缺少任何内容吗?Google显示的结果很少。 本地环境(Mac OS X 10.6): 远程环境(Linux版本2.6.16.27-0.9-smp(gcc版本4.1.0(SUSE Linux))):
我的log4j2中有此配置。xml文件: 我将此文件放在src/resources中,并遵循以下指南:guide,但当我运行项目时,出现以下错误: