繁体   English   中英

如何在不使用$ _SESSION [“name”] =“的情况下将js变量存储到php中 <script>document.write(name)</script> “;?

[英]How to store js variable into php without using $_SESSION[“name”] = “<script>document.write(name)</script>”;?

我尝试使用$ _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']) . "'/>
<script>
    var name;
    $(document).ready(function()
    {
    $('#info tr #name').click(function()
    {

        name = $(this).text();
        alert(name);
        window.location = 'CV.php?name=' + name; // send in link

    });
    });
    </script>

在CV.PHP里面

if(isset($_GET['name']))
{
    $name = $_GET['name']; // Get it from URL
    $_SESSION["name"] = $name; 
}
else
{
    $name = $_SESSION['name']; // Get it from session
}
$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='" .$name . "'/> // echo value as string
    <input type='text' value='" .$_SESSION['name']. "'/> // if it's a page that is not CV.php

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM