如何在php中访问JavaScript变量我试过以下但是没有工作

时间:2016-08-30 11:10:33

标签: javascript php

我尝试使用JavaScript变量从标记执行select查询,但它不起作用。

它有什么问题

function method12()
{
    var value12=document.getElementById('period').value
    <?php
    $con=mysql_connect("localhost","root","");
                if(!$con)
                    {   
                    die('could not connect:'.mysql_error());
                    }

                    mysql_select_db("db_loan",$con);
                    $sqlstr="select bankcode from tbl_master where loanaccountnumber='".value12."'";
                    $result=mysql_query($sqlstr);
                    $row=mysql_fetch_array($result);
                    echo $row['bankcode'];
    ?>
    alert(value12);
}

2 个答案:

答案 0 :(得分:2)

PHP在服务器端运行。 JavaScript在请求页面的用户的浏览器中运行客户端。在执行JavaScript时,无论如何都无法访问服务器上的PHP。请阅读此文章,详细了解client-side vs server-side coding

简而言之,这是:

您在桌面下的计算机上单击浏览器中的链接 浏览器创建HTTP请求并将其发送到Internet上的服务器 服务器检查他是否可以处理请求 如果请求是针对PHP页面的,则启动PHP解释器 PHP解释器将在您请求的页面中运行所有PHP代码 PHP解释器不会运行任何JS代码,因为它没有任何关于它的线索 服务器会将解释器汇编的页面发送回您的浏览器 您的浏览器将呈现该页面并显示给您 JavaScript在您的计算机上执行 在您的情况下,PHP会将JS代码写入页面,因此可以在浏览器中呈现页面时执行。到那时,JS片段中的PHP部分不再存在。它已经在服务器上执行了。它创建了一个包含SQL查询字符串的变量$ result。你没有使用它,所以当页面被发送回你的浏览器时,它已经消失了。在浏览器中呈现页面时,请查看源代码。你会看到你放置PHP代码的位置没有任何内容。

做你想做的事的唯一方法是:

重定向到PHP脚本或 对PHP脚本执行AJAX调用 使用您想要插入数据库的值

答案 1 :(得分:1)

您不能在PHP中使用JS变量。 JS代码在客户端上运行,PHP代码在服务器上运行。

要执行您想要的操作,您必须通过GET或POST请求将JS值发送到服务器,然后通过$ _POST [“varname”]或$ _GET [“varname”]

获取该值