变量未通过

时间:2016-01-18 13:48:03

标签: 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></li>";
  }
?>  

echo "<li><a href='#' onclick='movie(".$c.")'>". $c. "</a></li>";有什么问题?

的javascript

function movie(a){
  var n = document.getElementById(a).value;
  var rnd = Math.random();
  var url="movie.php?id="+rnd;
  postRequest(url);
}

2 个答案:

答案 0 :(得分:1)

在您的代码中,有一个错误onclick='movie(".$c.")'>"替换为onclick='movie('".$c."')'>"

<?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>";
}
?>  

<强>的javascript

function movie(a)
{
        var n = document.getElementById(a).value;
        var rnd = Math.random();
        var url="movie.php?id="+rnd;
        postRequest(url);
 }

答案 1 :(得分:0)

您的代码中的问题是,您在if-else函数中使用字符串参数而不使用引号。

如果你想节省你的时间而不是混合使用PHP和HTML:

movie()

第二次,在哪里使用此行?

<?
$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; mysqli_*代替PDO扩展名,不推荐使用,不适用于PHP 7。