2013-03-08 159 views
0

我在我的网页上有这个PHP和JS代码。PHP和JS代码没有执行

<?php 
include 'connect1.php'; 
$query = "SELECT URL FROM remontee_nlf ORDER BY URL ASC"; 
$result = mysql_query($query) or die (mysql_error());; 
$counter = 0; 
// write the values from the database into the javascript array 
    echo "<script type='text/javascript'>"; 
    echo "this.styleListArray = new Array();"; 
    if ($result) { 
     while($row = mysql_fetch_array($result)) { 
      echo("this.nameArray[" . $counter . "] = '" . $row['URL'] . ", " .   $row['user_fname'] . "';"); // displays 'lname, fname' 
      $counter += 1; 
     } 
    } 
echo("</script>"); 

?> 

的问题是,当我执行包含代码的页面,这个代码的一部分没有得到执行,它只是显示在页面上作为一个简单的文字:

"); echo "this.styleListArray = new Array();"; if ($result) { while($row = mysql_fetch_array($result)) { echo("this.nameArray[" . $counter . "] = '" . $row['URL'] . ", " . $row['user_fname'] . "';"); // displays 'lname, fname' $counter += 1; } } echo(""); ?> 

我试图弄清楚,但我无法得到它,如果你能帮助兄弟,这将是美好的。

+0

JS代码*是指*作为文本输出。你是说PHP也是? – 2013-03-08 10:46:34

+2

我强烈建议您检查您的Qoutemarks并检查它们是否正在打开和关闭。好像你有一个额外的地方。 – Husman 2013-03-08 10:46:39

+0

我试过这段代码,我无法重现这个问题。这是正确和完整的代码? – Oli 2013-03-08 10:55:39

回答

-1

你有$result = mysql_query($query) or die (mysql_error());;其更改为

$result = mysql_query($query) or die (mysql_error()); 

另外,还要确保$row['URL']$row['user_fname']可用。

0

尝试改写这样的代码:

include 'connect1.php'; 
$query = "SELECT URL FROM remontee_nlf ORDER BY URL ASC"; 
$result = mysql_query($query) or die (mysql_error()); 
$counter = 0; 
// write the values from the database into the javascript array 

echo <<<HTML 
<script type='text/javascript'> 
this.styleListArray = new Array(); 
HTML; 

$strLine = ''; 

if ($result) { 
    while($row = mysql_fetch_array($result)) { 
     $strLine.= "this.nameArray[" . $counter . "] = '" . $row['URL'] . ", " . $row['user_fname'] . "';"; 
     $counter += 1; 
    } 
} 

echo $strLine; 

echo("</script>"); 
+0

猜猜看,我仍然有同样的问题:/和这是它显示在页面上 – PaxBin 2013-03-08 11:11:13

+0

this.styleListArray = new Array(); HTML; $ strLine =''; if($ result){while($ row = mysql_fetch_array($ result)){$ strLine。=“this.nameArray [”。 $柜台。 “] ='”。 $ row ['URL']。 “,”。 $ row ['user_fname']。 “';”; $ counter + = 1; }} echo $ strLine;回声(””); ?> – PaxBin 2013-03-08 11:12:00

0

首先,改变你的查询中使用的mysqli或PDO连接 其次尝试下面的代码

$sql = 'SELECT URL FROM remontee_nlf ORDER BY URL ASC'; 
$res = mysql_query($sql, $con); 
$rows = array(); 
while ($row = mysql_fetch_assoc($res)) 
    $rows[] = $row['URL']; 

$str = implode('", "', $rows); 
$data = '["'.trim($str).'"]'; 

echo '<script type="text/javascript">'; 
echo "var data = $data;"; 
echo 'console.log(data)'; 
echo '</script>'; 

选中您控制台登录。

enter image description here