分析错误:语法错误,意外'';(T_ENCAPSED_AND_WHITESPACE),应为标识符(T_STR


Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable

当我这样做时,我一直收到这个错误:

<?php
$info = $_POST['mname'];
$info = ucwords($info);
// Make a MySQL Connection
mysql_connect("localhost", "user", "password") or die(mysql_error());
mysql_select_db("javadatest") or die(mysql_error());  
// Get a specific result from the "example" table
$result = mysql_query("SELECT * FROM movieList
WHERE name = '$info'") or die(mysql_error());  
// get the first (and hopefully only) entry from the result
$row = mysql_fetch_array( $result );
// Print out the contents of each row into a table 
//echo $row['name']." ".$row['year']." ".$row['genre'];
echo "
  <script language=javascript>
  var jsvar;
  jsvar = <?php echo $row['name'], $row['year'], $row['genre'];?>
  function buy() {
    window.location = '"https://www.paypal.com'";   
    alert('"Thanks for shopping at Movie Store'");     
  }
  var myWindow = window.open('', '', 'width = 300, height = 300);
  myWindow.document.write(jsvar);
  myWindow.document.write('<body>'); 
  myWindow.document.write('<input type="button" value="Buy" onclick=/"buy()/">');
  myWindow.document.write('</body>');
 //myWindow.buy = buy;
 </script>
";
?>

我试图通过将javascript代码放在echo语句中,在php文件中使用javascript。我不明白我做错了什么。如有任何帮助,我们将不胜感激。

您不需要编写这行

jsvar = <?php echo $row['name'], $row['year'], $row['genre'];?>

只需使用

jsvar = {$row['name']} {$row['year']} {$row['genre']};

因为您已经使用了PHP。

还有

更换

myWindow.document.write('<input type="button" value="Buy" onclick=/"buy()/">');

带有

myWindow.document.write('<input type='"button'" value='"Buy'" onclick='"buy()'">');
myWindow.document.write('<input type="button" value="Buy" onclick=/"buy()/">');

应该是

myWindow.document.write('"<input type='button' value='Buy' onclick='buy()'>'");
    $row = mysql_fetch_array( $result );
    // Print out the contents of each row into a table 
    //echo $row['name']." ".$row['year']." ".$row['genre'];
    ?>
      <script language=javascript>
      var jsvar;
      jsvar = <?php echo json_encode($row['name']), json_encode($row['year']), json_encode($row['genre']);?>
      function buy() {
        window.location = '"https://www.paypal.com'";   
        alert('"Thanks for shopping at Movie Store'");     
      }
...
</script>