将数据从一个php文件发送到另一个php文件

将数据从一个php文件发送到另一个php文件,php,Php,我想将数据从一个php文件发送到另一个php文件,以验证用户身份。它们都不能是html文件。我不能发送它作为标题,因为它出现在url中。请给我一些建议。加密或散列身份验证数据,并作为POST正文的一部分或在URL中发送。在接收端,查看$\u POST或$\u GET,您可以使用它来发送一个安全的POST请求,如果接收方脚本位于另一台服务器上,甚至。这不会暴露URL中的任何内容,但是Firebug可能能够看到请求。要解决这个问题,只需确保您的auth密钥和正在发送的密码正确无误 类似这样的东西(未

我想将数据从一个php文件发送到另一个php文件,以验证用户身份。它们都不能是html文件。我不能发送它作为标题,因为它出现在url中。请给我一些建议。

加密或散列身份验证数据,并作为
POST
正文的一部分或在URL中发送。在接收端,查看
$\u POST
$\u GET

,您可以使用它来发送一个安全的
POST
请求,如果接收方脚本位于另一台服务器上,甚至。这不会暴露URL中的任何内容,但是Firebug可能能够看到请求。要解决这个问题,只需确保您的
auth密钥
和正在发送的密码正确无误

类似这样的东西(未经测试)

这是发送者脚本

<?php

///// Sender.php ///////

//Set up some vars
$url = 'http://domain.com/Receiver.php';

$user = 'someusername';
$pw = 'somepassword';
$auth_key = 'YourSecretAuthKey';

$fields = array(
            'auth'=>urlencode($auth_key),
            'user'=>urlencode($user),
            'pw'=>urlencode($pw)
        );

// Init. string
$fields_string = '';
// URL-ify stuff
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string,'&');

//open connection
$ch = curl_init();

//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);

//execute post
$result = curl_exec($ch);

//close connection
curl_close($ch);


?>

和接收器脚本:

<?php

////// Receiver.php //////

if(!isset($_POST['authkey']))die('Error: No Auth Key');
if(!isset($_POST['user']))die('Error: No Username!');
if(!isset($_POST['pw']))die('Error: No password!');

$auth_key = $_POST['auth'];
$correct_authkey = 'YourSecretKey';

if($auth_key!=$correct_authkey)die('WRONG AUTH KEY!!!!');

$user = $_POST['user'];
$pw = $_POST['pw'];

//// Here you can process your username and password

?>


POST
请求是非常安全的,但如果您处理的是关键信息,则始终可以对身份验证密钥和密码进行哈希运算。希望这有帮助。

您需要将身份验证信息包含到另一个文件中,因此:

<?php
require_once('authentication_infomation.php');
doTheAuthentication($authentication_information);
?>

见:


更多信息。

我想你需要把问题扩大一点。这些文件在同一台服务器上吗?文件里有什么?@Matt文件在同一台服务器上,同一个目录下。一个文件包含身份验证信息(用户名、密码等),另一个文件将验证该信息。我不能嵌入这两个文件是作为数组存储的身份验证信息(用户名、密码)吗?如果userz不能是html文件,它们不能使用HTTP协议,例如
$\u POST
$\u SESSION
?还有重定向(Z:)$_GET违背了OP的首选解决方案。
而且我无法嵌入这两个文件
-OP对其OP的评论:)@Jeff我可能误解了这一评论。我假设OP由于不知道如何嵌入文件而无法嵌入文件。