2013-07-18 139 views
1

我發現這個代碼,不正是我需要的刪除行 - 語法錯誤

http://www.daveismyname.com/tutorials/php-tutorials/delete-rows-from-a-mysql-database-with-a-confirmation/

當我將代碼複製到一個新的Dreamweaver PHP文件,它指出,有語法錯誤這部分:

<?php 
$result = mysql_query("SELECT * FROM news")or die(mysql_error()); 
while($row = mysql_fetch_object($result)) 
{ 
echo "<ul>n"; 
echo "<li>$row->newsTitle <a href="javascript:delnews('$row->newsID','$row->newsTitle')">Delete</a></li>n"; 
echo "</ul>n"; 
} 
?> 

更具體地在echo <li>$row行。

如果我試圖把它上傳反正它說:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/asbj1076/public_html/testdel/admin.php on line 39

我可以將它保存爲沒有這種語法錯誤HTML5的文件,但代碼仍然是不是正常工作。

有什麼建議嗎?

我知道已經有很多類似的問題了,對不起。 我只是一個在我頭頂的小白人,所以我需要非常具體的幫助。

謝謝。 Asbjørn

+1

逃亡'「'在中間第二個回聲使用'\「'代替。 – 3ventic

+1

嘗試'回聲「

  • $ row-> newsTitle newsID','$row->newsTitle')\">Delete
  • n」;' –

    回答

    2

    因爲第二個echo語句中的雙引號" PHP會拋出錯誤,因爲它試圖評估那些引號內的HTML。

    echo "<li>$row->newsTitle <a href="javascript:delnews('$row->newsID','$row->newsTitle')">Delete</a></li>n"; 
               ^            ^
    

    這些標記之間的一切都試圖被視爲php和錯誤。改爲像這樣逃脫你的報價。

    echo "<li>$row->newsTitle <a href=\"javascript:delnews('$row->newsID','$row->newsTitle')\">Delete</a></li>n"; 
    
    +0

    將在一分鐘內嘗試,現在它的熱狗時間。 非常感謝您的快速回復。 – user2596886

    +0

    答案是好的,但也許你可以分開每個部分,而不是在同一行上寫入php,html和js。像這樣寫,會使代碼真的很難調試。之後,他應該刪除mysql_ *語句,因爲它現在已被棄用。 –

    +0

    我可以看到你說什麼。幸運的是,似乎弗雷德已經爲我做了這件事。謝謝。 – user2596886

    1

    您可以嘗試(保持ul退出循環)

    echo "<ul>"; 
    while($row = mysql_fetch_object($result)) 
    { 
        echo "<li>" . $row->newsTitle . " <a href='javascript:delnews(\'" . $row->newsID ."\', \'" . $row->newsTitle . "\')>Delete</a></li>"; 
    } 
    echo "</ul>"; 
    

    輸出將是:

    • 你好刪除