<a class='okok' id='$file' href='" . $_SERVER['PHP_SELF'] . "?file=" . $file . "'>$file</a>
上面的代码是一个链接,它将其名称传递给变量&#39; file&#39;然后在URL中显示为:
http://example.com?file=thefile.html(无论文件是什么)
使用PHP,我现在可以从URL中检索变量,然后对其进行处理(在这种情况下,变量是&#39; thefile.html&#39;。
如何使用Sessions阻止变量传递到URL。所以而不是:
http://example.com?file=thefile.html
我会:
http://example.com
变量&#39; thefile.html&#39;将存储在会话中。
如果您需要更多关于我想问的信息,请询问。
答案 0 :(得分:0)
您必须创建一个有效页面,用于接收您在网址中传递的查询字符串 假设您的链接在index.html上,并且您的链接目标是result.php,那么您将在result.php中编写以下代码
<?php
session_start();
if( isset($_GET["filename"]) ){
$fname = $_GET["filename"];
//code to deal with filename
//save in session variable
$_SESSION['UploadedFilename'] = $fname;
}
?>
<!-- html -->
<?php
session_write_close();
?>
答案 1 :(得分:0)
如果您想将文件名从浏览器(链接所在的位置)传递给没有参数的主机,则需要使用cookie。会话是主持人的概念。
因此,作为一个简单的例子,您可以使用:
<a class='okok' id='$file' href='" . $_SERVER['PHP_SELF'] . "' onclick="document.cookie='filename=" . $file . "';">$file</a>
这会创建一个包含文件名的cookie。
在主机端,您使用$ _COOKIES ['filename']检索名称。