Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.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中,如何将值从一个页面传递到另一个页面,而不是通过URL?_Php_Html_Mysql - Fatal编程技术网

在php中,如何将值从一个页面传递到另一个页面,而不是通过URL?

在php中,如何将值从一个页面传递到另一个页面,而不是通过URL?,php,html,mysql,Php,Html,Mysql,如何将值发布到loginchk_coustomer.php,请参见下面的代码,而不是通过Url以任何其他方式。 是否有其他方法将这些值发布到loginchk_coustomer.php,因为它不安全 <?php include "include/connect.php"; $user_name = $_REQUEST['user_name']; $password = $_REQUEST['password']; //echo "select * from sc

如何将值发布到loginchk_coustomer.php,请参见下面的代码,而不是通过Url以任何其他方式。 是否有其他方法将这些值发布到loginchk_coustomer.php,因为它不安全

 <?php
include "include/connect.php";
$user_name       = $_REQUEST['user_name'];
$password        = $_REQUEST['password'];
//echo "select * from school_info where school_id='$user_name' and school_password='$password'";
$sql_query       = mysql_fetch_assoc(mysql_query("select * from school_info where school_id='$user_name' and school_password='$password'"));
$db_username     = $sql_query['db_username'];
$db_password     = $sql_query['db_password'];
$db_databasename = $sql_query['db_databasename'];

echo "<script>";
echo "self.location='member/loginchk_customer.php?db_username=$db_username&db_password=$db_password&db_databasename=$db_databasename&user_name=$user_name&password=$password'"; // Comment this line if you don't want to redirect
echo "</script>";

?>

您需要创建一个会话来存储所有这些信息

以下是它们的来源:

PHP中的会话支持包括在后续访问中保留某些数据的方法

要启动会话,请在代码开头写入:

session_start(); // needed in all pages that will use the variables below
然后,在您以这种方式分配信息之后:

$_SESSION['username'] = $sql_query['db_username'];
$_SESSION['password'] = $sql_query['db_password'];
$_SESSION['databasename'] = $sql_query['db_databasename'];
所有信息将保留在站点上的这些变量上,直到您执行以下操作:

session_destroy();
我还建议您不要使用javascript重定向,而是使用PHP:

header('Location: member/loginchk_customer.php');
可能在检查完这个答案后,你会考虑改变检查登录信息的方式。但没关系。这是学习的方式

有关会话的更多信息:


我希望这会有所帮助。

您是在问什么?直接包含文件,还是持久化数据会话/数据库注意:PHP重定向代码头'Location:…';仅在发送任何数据之前工作。在重定向之前包含或需要的任何文件上,您不得回显任何内容,并且应省略最终?>标记。是的,谢谢您的澄清。还有,杰克·道森,如果你做标题“位置:…”;在一个代码的中间,例如在IF中,用于登录或注销,这可能会稍后回响,这是一个正常的死亡模式;在那一行之后,立即中止执行-如果它以后不会回显任何内容,则没有必要-亲爱的axelbrz感谢您的回复。我使用此代码访问多个数据库,1个数据库包含客户端的所有详细信息,如用户名密码db_username db_password,其他数据库包含它们的数据,可以吗?或者我必须遵循任何其他程序。这没关系,我想,无论如何,试着研究更多关于如何在数据库中存储密码的知识,就好像它们是以明文形式存储的一样,而您的数据库被您的用户破坏了,您将遇到一个小问题。。此外,如果您觉得答案有用,并且您认为它是正确的,请将其标记为您选择的答案,让我们知道,不要无限期地保留此问题,谢谢。