将php变量传递到同一页面上的javascript函数

时间:2012-09-15 19:22:41

标签: php javascript variables popup href

我有一个php页面,可以从SQL表中调用数据,然后显示它们。 我正在尝试创建一个弹出页面来查看与表中的一段数据相关的表(规范化数据库)。 我无法弄清楚如何做到这一点。 我目前的php表显示是 其中$ result是一个mysqli查询数组

while($row = mysqli_fetch_array($result)) {
    echo '<tr>';
    echo "<td style='border:1px solid black;'>{$row['first_name']}</td>";
    echo "<td style='border:1px solid black;'>{$row['last_name']}</td>";
    echo "<td style='border:1px solid black;'>{$row['grade']}</td>";
    echo "<td style='border:1px solid black;'>{$row['gpaP']}</td>";
    echo "<td style='border:1px solid black;'>{$row['AGP']}</td>";
    echo "<td style='border:1px solid black;'>{$row['rigorP']}</td>";
    echo "<td style='border:1px solid black;'>{$row['APP']}</td>";
    echo "<td style='border:1px solid black;'>{$row['formID']}</td>";
    echo "<td style='border:1px solid black;'>{$row['total']}</td>"; 
    echo "<td style='border:1px solid black;'>{$row['date']}</td>";
    echo "<td style='border:1px solid black;'>{$row['IP']}</td>";
    echo '</tr>';
}

echo "<td style='border:1px solid black;'>{$row['formID']}</td>";

是我需要更改为弹出框的热链接。弹出窗口的href应该是“activities.php?form_id = {$ formID}”但是我无法找到一种方法来处理所有与php和所有事件的冲突。 我想做的是建立像

这样的链接
echo "<td style='border:1px solid black;'><a href=\"javascript:win1()\">asdfasd<a/></td>";

然后创建一个像

这样的javascript函数
<script language="JavaScript">
function win1() {
    window.open("activities.php?form_ID={$formID}","Window1","menubar=no,width=460,height=360,toolbar=no");
}
</script>

但这不起作用,因为$ formID变量由于某种原因没有加载。如果我试图从activities.php获取变量,如

$getvar = $_GET['form_ID'];

然后

echo $getvar;

它什么也没显示.. 有人请帮助我,我想我的脑袋会爆裂..

2 个答案:

答案 0 :(得分:1)

尝试将您的功能更改为

function win1(formID) {
    window.open("activities.php?form_ID="+formID,"Window1","menubar=no,width=460,height=360,toolbar=no");
}

和你的PHP

echo "<td style='border:1px solid black;'><a href=\"javascript:win1($formID)\">asdfasd<a/></td>";

答案 1 :(得分:0)

您可以在while

中使用
echo "<td style='border:1px solid black;'><a href=\"javascript:win1('{$row['formID']}')\">asdfasd<a/></td>";

并在while以外的地方运作:

<script language="JavaScript">
function win1(frmid) {
    window.open("activities.php?form_ID="+frmid,"Window1","menubar=no,width=460,height=360,toolbar=no");
}
</script>