Php 使用curl时Cookie不起作用
您好,我想创建登录单点登录(sso) 我必须输入ip 2的ip地址 #1用于登录(主页) #2用于访问应用程序(应用程序) 我有两个数据库Php 使用curl时Cookie不起作用,php,curl,cookies,Php,Curl,Cookies,您好,我想创建登录单点登录(sso) 我必须输入ip 2的ip地址 #1用于登录(主页) #2用于访问应用程序(应用程序) 我有两个数据库 德布鲁之家酒店 数据库应用程序 当我在主页中创建登录时并将curl设置为fileapps <?php ob_start(); session_start(); include("con_db_apps.php"); $id_sso = $_REQUEST['id_sso']; if($id_sso==""){ header('Locat
- 德布鲁之家酒店
- 数据库应用程序
<?php
ob_start();
session_start();
include("con_db_apps.php");
$id_sso = $_REQUEST['id_sso'];
if($id_sso==""){
header('Location: .');
}
else {
$data_us = "select * from tbl_user where user_id_sso='".$id_sso."' ";
$resultdb= $f->get_last_record($data_us);
foreach($resultdb as $key=>$val) $$key=$val;
setcookie("login_session","$id_hash");
setcookie("login_nip","$nip");
setcookie("login_username","$username");
setcookie("login_name","$first_name $last_name");
setcookie("login_fua","$fua_name");
else {
session_destroy();
header('Location: .');
}
}
文件:proses\u login.phpinhome
<?php
include "con_db_home.php";
$username = $_POST['username'];
$pwd = hash('sha512', $_POST['password']);
$sql = mysqli_query($con,"SELECT * FROM app_user WHERE username='".$username."' and password='".$pwd."' and status='1'");
$result = mysqli_fetch_object($sql);
$_SESSION['id_user'] = $result->id_user;
$_SESSION['username'] = $result->username;
$_SESSION['status'] = $result->status;
$_SESSION['role'] = $result->role;
session_start();
if($result->username!=""){
$_SESSION['id_user'] = $result->id_user;
$_SESSION['username'] = $result->username;
$_SESSION['status'] = $result->status;
$_SESSION['role'] = $result->role;
$target_site = "http://192.168.10.203:8007/connect_curl.php";
$myvars = 'id_sso='.$result->id_user;
$ch = curl_init($target_site);
curl_setopt( $ch, CURLOPT_POST, 1);
curl_setopt( $ch, CURLOPT_POSTFIELDS, $myvars);
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt( $ch, CURLOPT_HEADER, 0);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec( $ch );
curl_close();
header('Location: .');
return;
}
else {
echo "<script language='JavaScript'> alert ('Wrong Username / Password'); </script>
<script language='JavaScript'>document.location='.'</script>";
}
?>
cookie是为进行curl调用的服务器创建的,而不是您正在使用的浏览器。@KIKOSoftware因此您有了一个解决方案:(您可以使用对curl调用的响应来设置或不设置浏览器正在调用的脚本中的cookie。PS:我没有检查您的登录过程是否存在任何安全问题。哦,我明白了,是的,它有:我想这可能也不能完全实现您的要求,对不起。您必须使用一种稍微不同的方法,我不是hink.您也没有两个IP地址,您有一个IP地址和两个端口。cookie是为进行curl调用的服务器创建的,而不是为您正在使用的浏览器创建的。@KIKOSoftware因此您有了一个解决方案:(您可以使用对curl调用的响应来设置或不设置浏览器正在调用的脚本中的cookie。PS:我没有检查您的登录过程是否存在任何安全问题。哦,我明白了,是的,它有:我想这可能也不能完全实现您的要求,对不起。您必须使用一种稍微不同的方法,我不是你也没有两个IP地址,你有一个IP地址和两个端口。