通过URL中的javascript发送php变量值

时间:2012-03-06 09:27:10

标签: php javascript

我已阅读this posthow do i send a variable in the url in javascript),但无法让它发挥作用。我必须补充一点,我根本不懂javascript。我正在尝试在php中打开一个新的“打印机友好”页面,但为了这个我需要发送带有url的用户ID,我的代码看起来像这样:

第1页

<?php
session_start();
$userid = $_SESSION['userid'];
?>
<head>
<script type="text/javascript">
function open_win()
{
window.open("http://www.mysite.com/exams/print.php?uid_print=$userid",'','width=200,height=100')
}
</script>
</head>
<?php
if ($_SESSION['auth']) {  
include 'datalogin.php';

echo "<input type='button' value='Print this page' onclick='open_win()' />";

第二页(print.php)

<?php
session_start();
include 'datalogin.php';
$uid_print1 = $_GET['uid_print'];

echo $uid_print1;

但我的输出是:$ userid

7 个答案:

答案 0 :(得分:4)

window.open("http://www.mysite.com/exams/print.php?uid_print=&lt;?php echo $userid; ?>",'','width=200,height=100')

答案 1 :(得分:2)

修改您的window.open行,如下所示:

window.open("http://www.mysite.com/exams/print.php?uid_print=<?php echo $userid; ?>",'','width=200,height=100');

您必须'输入'PHP块,并将$userid变量打印到HTML(JavaScript)输出。

答案 2 :(得分:2)

JS脚本中的这一行:

window.open("http://www.mysite.com/exams/print.php?uid_print=$userid",'','width=200,height=100')

直接输出'$ userid'。您需要用以下内容替换$ userid:

<?php echo $userid; ?>

答案 3 :(得分:2)

使用<?php....?>标记:

...print.php?uid_print=<?php echo $userid;?>

答案 4 :(得分:2)

更换:

window.open("http://www.mysite.com/exams/print.php?uid_print=$userid",'','width=200,height=100')

使用:

window.open("http://www.mysite.com/exams/print.php?uid_print=<?php echo $userid; ?>",'','width=200,height=100')

应该可以做到这一点。

你也可以使用shorthand <?= $userid ?>,这对我来说更具可读性。

答案 5 :(得分:2)

请在您的javascript中连接$ userid。

它可以像uid_print ='。$ userid一样连接。并且您将获得$ _GET [“uid_print”]

中的值

你也可以在字符串中回显$ userid,如

答案 6 :(得分:2)

目前,javascript标记中的变量未被替换,因为它没有被PHP标记括起来。你可以这样轻松地做到这一点:

window.open("http://www.mysite.com/exams/print.php?uid_print=<?php echo $userid; ?>",'', 'width=200,height=100')