// first page
<?php
session_start();
// $var_value =$_SESSION['orderidno'];
// $var_value =$_GET['orderur'];
if(isset($_POST['login']))
{
$mobileNo=$_POST['mobileNo'];
$passWord=$_POST['passWord'];
}
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'here is my api url',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
));
$response_details = curl_exec($curl);
$data_details=json_decode($response_details,TRUE);
$data1_details=json_decode($response_details);
curl_close($curl);
$res=$data_details['ispasswordMatched'];
if($res)
{
$_SESSION['loggedin'] = "true";
$_SESSION['loggedinnumber'] = $mobileNo;
foreach($data_details['content'] as $result)
{
$_SESSION['vendorname'] = $result['vendorname'];
$_SESSION['vendorkey'] = $result['vendorkey'];
$_SESSION['userkey'] = $result['key'];
//here i have been storing my api result values in session
}
echo "<script> location.href='userdetails.php'; </script>";
}
else if($mobileNo!="")
{
$empty=$data_details['message'];
}
?>
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>PHP HTML TABLE DATA SEARCH</title>
<style>
table,tr,th,td
{
border: 1px solid black;
}
div#searcharea {
text-align: center;
}
</style>
</head>
<body>
<form id="search_form" method="post" action="login.php" >
<!--<h4>Search Customer / Customer Order</h4>-->
<div>
<input id="mobilenumbervalue" style="width: 88%; margin-top: 22px" type="text" name="mobileNo" placeholder="Enter the Mobile Number" pattern="[1-9]{1}[0-9]{9}" required>
<input id="orderidvalue" style="width: 88%; margin-top: 22px" type="password" name="passWord" placeholder="Enter the password" required>
<br>
<p id="mobileError" style="color: red;"><?php echo $empty?></p>
<p id="orderError" style="color: red;"><?php echo $emptyOrder?></p>
</div>
<div>
<Button style="background: #fdd110; width: 35%;
height: 39px; border: #fdd110; margin-top: 15px;" id="userdataSearchButton" type="submit" name="login" >Log In</Button>
</div>
</form>
<script type="text/javascript">
function myFunction() {
alert("work in progress");
}
function required()
{
var empt = document.forms["form1"]["valueToSearch"].value;
if (empt == "")
{
alert("Please input a Value");
return false;
}
}
</script>
</body>
</html>
//end of first page
//second page
//userdetails.php
<?php
session_start();
$var_value =$_SESSION['loggedin'];
if($var_value!="true")
{
echo "the user doesn't exist";
}
else
{
echo "the user is exists";
}
?>
//here will be my second page html
//end of second page
我在做什么
- 在第一部分中,我一直在检查数据库中是否存在手机号码和密码。如果手机号码存在,那么我一直在会话中保存它们以在其他页面中使用,并在'$_SESSION['loggedin'] = "true";
- 在第二页中,我通过检查会话是否为真,但会话值为空来检查用户是否存在。
- 在第二页,我一直在检查它的值是否为真,但它的值是空的,所以我不能让用户使用页面。
- 其他会话值也为空。
- 当我在godaddy中托管它们时,这个程序正在工作。
- 在我换到新服务器后,会话不像在godaddy中工作那样工作了 工作方法
- 如果我在单独的php中运行这些并通过ajax调用,它正在工作会话值为'true',但我所有的代码都像在第一页php, html和javascript都在单页。
- 我需要一个解决方案,如何在一个页面上运行它们。
*。这个会话问题只有当我在我的新linux服务器主机上使用这些代码时才会出现,但是在godaddy linux主机上工作得很好。
如果需要更多的信息请给我留言。
由于您在两种不同的环境中经历了不同的行为,因此我会检查新服务器中的php配置以进行会话处理,即'session '。Cookie_httponly '(因为您使用javascript进行重定向),'session。Use_cookies '和'session.use_only_cookies'.
此外,我建议在进行重定向之前强制关闭会话,以确保会话在加载新页面之前实际写入数据。