2013-06-04 29 views
0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 
<body> 
<table id="users" border="1"> 
     <tr> 
      <td>ID</td> 
      <td>Name</td> 
      <td>Age</td> 
      <td>Email</td> 
      <td>DOB</td> 
     </tr> 
     <tr> 
      <td>1</td> 
      <td><input size=25 type="text" id="Name" readonly=true/></td> 
      <td><input size=10 type="text" id="Age" readonly=true/></td> 
      <td><input size=25 type="text" id="Email" readonly=true/></td> 
      <td><input size=10 type="date" id="DOB" readonly=true/></td> 
     </tr> 
    </table> 
<?php 
    $con = mysql_connect("127.0.0.1","root","test") or die(mysql_error()); 
    $db = mysql_select_db("lr") or die(mysql_error()); 
    $sql=mysql_query("SELECT * FROM user ")or die(mysql_error()); 
    $count=0; 

while($row = mysql_fetch_array($sql)) 
{ 
    $name=$row['Name']; 
    $age=$row['age']; 
    $email=$row['Email']; 
    $dob=$row['DOB']; 

    echo '<table id="users" border=""> 
     <tr> 
      <td>$count</td> 
      <td>$name</td> 
      <td>$age</td> 
      <td>$email</td> 
      <td>$dob</td> 
     </tr> 
    </table> '; 
$count++; 

} 

?> 
<form id="form1" name="form1" method="post" action="add.php"> 
<input type="submit" name="Add" id="Add" value="Add" /> 
<input type="submit" name="Remove" id="Remove" value="Remove" /> 
<input type="submit" name="Edit" id="Edit" value="Edit" /> 

</form> 

</body> 
</html> 

這是我已經嘗試過也從MySQL數據庫中檢索數據,但無法顯示它在我的HTML表。上面的代碼除了在表格上顯示值之外,其他的操作都不做。做檢查while循環打印值表從sql數據庫插入值到html表

+0

已打印每次在行值進行一些修改。一旦檢查$sql查詢得到的行?? – Gautam3164

+0

對於1表單1提交按鈕是足夠的,否則動作將是相同的所有他們,但isset不同() – Fabio

+0

需要的評論:mysql_被棄用,你應該使用mysqli_ ...但除此之外,它打印空行,還是基本上返回零結果? –

回答

2

嘗試這樣

echo '<table id="users" border="">'; 
while($row = mysql_fetch_array($sql)) 
{ 
    $name=$row['Name']; 
    $age=$row['age']; 
    $email=$row['Email']; 
    $dob=$row['DOB']; 

    echo 
     '<tr> 
      <td>'.$count.'</td> 
      <td>'.$name.'</td> 
      <td>'.$age.'</td> 
      <td>'.$email.'</td> 
      <td>'.$dob.'</td> 
     </tr>'; 

    $count++; 
} 
echo ' </table> '; 

,並嘗試使用mysqli_ *函數或PDO語句由於mysql_ *功能已被棄用。

+0

你糾正了這個問題,但沒有解釋什麼是錯的。 – 2013-06-04 13:23:48

+0

其實我以爲他可以比較他和我的,我刪除了這些單引號的值,並保留表頭和頁腳標籤以外的while循環,以便他可以得到多行的一個表 – Gautam3164

+0

它產生的輸出,但不符合提到上面的表..你能告訴我該怎麼做嗎? – Asd

0

單引號字符串內的變量未擴展。

Strings

注:當它們出現在單引號字符串特殊字符不像雙引號和定界符語法,變量和轉義序列不會被擴大。

您必須在字符串周圍使用雙引號,然後在字符串內部的HTML屬性周圍使用單引號。

while($row = mysql_fetch_array($sql)) 
{ 
    $name=$row['Name']; 
    $age=$row['age']; 
    $email=$row['Email']; 
    $dob=$row['DOB']; 

    echo "<table id='users' border=''> 
     <tr> 
      <td>$count</td> 
      <td>$name</td> 
      <td>$age</td> 
      <td>$email</td> 
      <td>$dob</td> 
     </tr> 
    </table>"; 
+0

,但它沒有與上面的表格對齊......如何整齊地在提供的表格中對齊它? – Asd

+0

要使列的寬度匹配,可以通過在'while'循環之外開始和結束表標記來將所有行放在同一個表中,就像在Gautam3164的答案中那樣,或者可以使用CSS來定義寬度的領域。 – 2013-06-05 09:01:33

0

通過把print_r($row);在一段時間後,這個循環做while循環

while($row = mysql_fetch_array($sql)){ 
echo "<table id='users' border=''> 
    <tr> 
     <td>".$count."</td> 
     <td>".$row['Name']."</td> 
     <td>".$row['age']."</td> 
     <td>".$row['Email']."</td> 
     <td>".$row['DOB']."</td> 
    </tr> </table>"; $count++; }