Javascript 未传递变量

Javascript 未传递变量,javascript,php,html,mysql,Javascript,Php,Html,Mysql,PHP <?php $q = "SELECT * FROM catagory"; $rs = mysql_query($q); while($d = mysql_fetch_assoc($rs)){ $c = $d["catagory_name"]; echo "<li><a href='#' onclick='movie(".$c.")'>". $c. "</a><

PHP

<?php                           
  $q = "SELECT * FROM catagory";
  $rs = mysql_query($q);

  while($d = mysql_fetch_assoc($rs)){
    $c = $d["catagory_name"];
    echo "<li><a href='#' onclick='movie(".$c.")'>". $c. "</a></li>";
  }
?>  

在您的代码中有一个bug
onclick='movie(“.c.”)”>“
替换为
onclick='movie(“.c.””)>”


代码中的问题是,在
movie()
函数中使用字符串参数,而不使用引号

如果您想节省时间,请将PHP和HTML混合使用:

<?
$q = "SELECT * FROM catagory";
$rs = mysql_query($q);
while($d = mysql_fetch_assoc($rs))
{
    $c = $d["catagory_name"];
    ?>
    <li><a href='#' onclick='movie("<?=$c?>")'><?=$c?></a></li>
<?
}
?>
我想你在你的URL中错过了它


第三个,请使用
mysqli*
PDO
而不是
mysql*
扩展,它已被弃用,在PHP7中不可用。

那么,您认为它有什么问题吗?你告诉我们你有什么迹象表明这不起作用。我们从这里看不到您的屏幕。请。已在PHP7中删除。了解使用PDO的语句,并考虑使用PDO,您不能获得OnCase=“电影”(“$C”)>“它的字符串”。您能至少添加更多关于您所获得的错误的细节吗?它是什么?var n=Doo.GETelEnMyByID(a)。
<?php                           
$q = "SELECT * FROM catagory";
$rs = mysql_query($q);
while($d = mysql_fetch_assoc($rs))
{
$c = $d["catagory_name"];
echo "<li><a href='#' onclick='movie('".$c."')'>". $c. "</a></li>";
}
?>  
function movie(a)
{
        var n = document.getElementById(a).value;
        var rnd = Math.random();
        var url="movie.php?id="+rnd;
        postRequest(url);
 }
<?
$q = "SELECT * FROM catagory";
$rs = mysql_query($q);
while($d = mysql_fetch_assoc($rs))
{
    $c = $d["catagory_name"];
    ?>
    <li><a href='#' onclick='movie("<?=$c?>")'><?=$c?></a></li>
<?
}
?>
var n = document.getElementById(a).value;