2013-03-08 86 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