[英]Why are my HTML tags disappearing?
我正在創建一個包含三個部分的網站。 (我將添加JQuery和CSS,但現在我只是在嘗試解決一些基本機制)
我的結構是:
下面是我的代碼:
的HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="RipListQuery.js"></script>
<title>CD Riplist Query</title>
</head>
<body onload="getArtists()">
<h1>CD Riplist Query</h1>
<div id="divArtists" >
</div>
</body>
</html>
Javascript:
function getArtists() {
xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET","dataAccess.php",false);
xmlhttp.send();
document.getElementById("divArtists").innerHTML=xmlhttp.responseText;
}
的PHP:
<?php
$con = mysql_connect('myServerAddress', 'ainsworthremote', 'myPassword');
if (!$con) {
die("Could not connect: " . mysql_error());
}
$response =
"<table border='1' id='Artists'><thead><tr><th>Artist</th><th>Albums</th></tr></thead><tbody>";
mysql_select_db("ainsworthremote", $con);
$sql="SELECT artist, COUNT(*) AS albums FROM CD_RipList GROUP BY artist ORDER BY artist ";
$result=mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
$response = $response . "<tr>" .
"<td>" . $row['artist'] . "</td>" .
"<td>" . $row['albums'] . "</td>" .
"</tr>";
}
$response = $response . "</tbody></table>";
mysql_close($con);
echo $response;
?>
我沒有得到一個如預期那樣充滿藝術家姓名的表格,而是得到了以下內容:
CD翻錄列表查詢
ArtistAlbums"; mysql_select_db("ainsworthremote", $con); $sql="SELECT artist, COUNT(*) AS albums FROM CD_RipList GROUP BY artist ORDER BY artist "; $result=mysql_query($sql); while ($row = mysql_fetch_array($result)) { $response = $response . "" . "" . $row['artist'] . "" . "" . $row['albums'] . "" . ""; } $response = $response . ""; mysql_close($con); echo $response; ?>
我想知道的(除了我做錯的事情之外)是:我的標簽發生了什么?
您的while語句沒有任何意義,即使這樣做,您也應讓等於'=='運算符而不是'='。 您正在從SQL請求返回一個數組,因此您需要遍歷該數組。 同樣,當附加到現有的str變量時,您可以使用“。=”運算符,例如
$response .= "</tbody></table>";
而while循環可能是一個foreach循環。
$query = mysql_query($sql);
$result = mysql_fetch_array($result);
foreach($result as $row){
$response .= "<tr>" .
"<td>" . $row['artist'] . "</td>" .
"<td>" . $row['albums'] . "</td>" .
"</tr>";
}
$response .= "</tbody></table>";
echo $response;
看看是否有幫助。 最重要的是,盡管看起來還可以,但您可能會有一些引號轉義的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.