2016-11-19 108 views
0

我在PHP中編寫了以下代碼以從mysql表中獲取詳細信息,但我不知道如何以HTML形式顯示它們。以HTML格式顯示SQL數據

<?php 
$servername = "localhost"; 
$username = "root"; 
$password = "icsk"; 
$dbname = "yusuf"; 

// Create connection 
$conn = new mysqli($servername, $username, $password, $dbname); 
// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

$sql = "SELECT dsl, Fname, Lname, Cid, pack FROM homereg"; 
$result = $conn->query($sql); 

if ($result->num_rows > 0) { 
    // output data of each row 
    while($row = $result->fetch_assoc()) { 
     echo $row['dsl']. " " . $row['Fname']. " " . $row['Lname']. " " . $row['cid']. " " . $row['pack'] ."<br>"; 
    } 
} else { 
    echo "0 results"; 
} 
$conn->close(); 
?> 

上面的代碼在echo的幫助下顯示網頁上的數據,但我希望它在窗體中顯示。 HTML表單有下面的代碼:

<form method="POST" name = "frm" action="homerenew.php"> 

    <div align="center"> 
     <table border="1" width="425"> 
      <tr> 
       <td width="223"><font face="Georgia"><b>Subscription Number</b></font></td> 
       <td width="186"><input type="text" name="T1" size="20"></td> 
      </tr> 
      <tr> 
       <td width="223"><font face="Georgia"><b>Your Current Pack</b></font></td> 
       <td width="186"><input type="text" name="T2" size="20"></td> 
      </tr> 
      <tr> 
       <td width="223"><font face="Georgia"><b>Renewal Options</b></font></td> 
       <td width="186"><select size="1" name="D1"> 
       <option value = "1 Month">1 Month</option> 
       <option value = "2 Months">6 Months</option> 
       <option value = "1 Year>1 Year</option> 
       </select></td> 
      </tr> 
      <tr> 
       <td width="223"><font face="Georgia"><b>Balance Payable</b></font></td> 
       <td width="186"><input type="text" name="T3" size="20"></td> 
      </tr> 
     </table> 
    </div> 
    <p align="center"><input type="submit" value="Renew" name="B1">&nbsp;&nbsp;&nbsp; 
    <input type="reset" value="Reset" name="B2"></p> 
</form> 

我是新來的PHP連接,這就是爲什麼有些迷惑。幫助將不勝感激。謝謝

+0

你想粘貼在HTML表單中的PHP值? –

+0

你可以使用PHP來生成整個表單,而你從MySQL獲取數據?設置輸入的值屬性以包含$ row [] ??? – 2016-11-19 13:12:30

+0

設置你的值是這樣的'value =「<?php echo $ row ['dsl'];?>」' – Karthi

回答

0

首先你需要有包含你的HTML表單的頁面的.php擴展名。

從數據庫中獲取數據後,你可以將它設置成表單元素像

<input type="text" name="T1" size="20" value="<?php echo $row['dsl'];?>"> 
0

我會使用類似於PHPTAL一個模板ENGIN建議更換。您將您的html頁面編寫爲包含tal:標籤的.xhtml文件,標籤由模板引擎用來插入您的php值。 Install instructionsexample of use

使用模板引擎的好處在於,您可以從腳本中刪除所有html內容,並將顯示邏輯保留在xhtml文件中。 php代碼只是收集數據並將其分配給模板知道的標籤。

您可以將所有行作爲數組並將其分配給模板對象中的變量名稱。然後在xhtml文件中使用該變量名稱來重複表格中的行(或任何其他元素)。

腓:

<?php 
require_once 'PHPTAL.php'; 
$rows = getMyDBRows(); 
// create a new template object 
$template = new PHPTAL('my_template_file.xhtml'); 
$template->rows = $rows; 

// execute the template 
try { 
    echo $template->execute(); 
} 
catch (Exception $e){ 
    echo $e; 
} 

的XHTML例如重複每一行,插入元件內容,設置屬性和使用條件語句只顯示爲行索引1.重複方法的輸入場的行部分可以用於選擇和條件檢查中的選項以設置選定屬性。 Phptal需要嚴格的xhtml結構xhtml中的任何錯誤,並且該頁面將返回一個錯誤,指出存在問題的位置。

<tr tal:repeat="row rows"> 
    <td tal:content="row/dsl"><\td> 
    <td tal:content="row/fname"><\td> 
    <td><input name="lname" tal:attributes="value row/lname, style php: repeat.row.id EQ 1?'display:inline-block':'display:none" tal:content="row/lname"></input> 
    ...... 
<\tr>