【发布时间】:2016-06-04 06:45:08
【问题描述】:
我尝试使用 $_SESSION["name"] = "document.write(name)";如果我回应它,它就会起作用。但是如果我要将此 SESSION 变量显示到文本框中或使用它来执行 SQL,它会显示 document.write(name)。如何正确地将其存储到 php 变量中?我搜索过,很多人说你不能转换它。但肯定有某种方式我可以使用 Javascript 变量(名称)在文本框中显示它或在 SQL 中使用它。
带有变量名的javascript代码。
<script>
var name;
$(document).ready(function()
{
$('#info tr #name').click(function()
{
name = $(this).text();
alert(name);
window.location = 'CV.php';
});
});
</script>
对于 SQL,我的代码是这样的,
<?php $_SESSION["name"] = "<script>document.write(name)</script>";
echo $_SESSION["name"];
$connect = mysqli_connect("localhost", "root", "","test1");
$sql = "SELECT Name, Number, Expertise, Status, Remarks FROM particulars WHERE Name ='". $_SESSION["name"]."'";
$result = mysqli_query($connect, $sql);
while($row= mysqli_fetch_array($result))
{
$name = $row['Name'];
$number =$row['Number'];
$Expertise =$row['Expertise'];
$status =$row['Status'];
$remarks =$row['Remarks'];
}
?>
下面是我的代码,试图将我在会话中存储的变量显示到文本框中。
<input type='text' value='" .htmlspecialchars($_SESSION['name']) . "'/>
【问题讨论】:
-
PHP 是服务器端,document.write 是 JS,客户端。 PHP 不会对其进行解析,而是将其作为字符串回显。当您回显它时它会起作用,因为您的浏览器会这样做。但是当你把它放在文本值中时,浏览器会将它视为一个值(字符串不是要呈现的函数)
标签: javascript php session variables