2017-09-24 186 views
-2

我想填充一個下拉列表來顯示我的數據庫中的內容字段,但只是變得空白。任何人都可以提出我要去哪裏錯了。有人建議我試着按照這個PDO路線來防止SQL注入。填充下拉列表

此外,似乎我以前的帖子與實踐守則相違背,一些用戶對我的貢獻不滿意 - 我不確定爲什麼如此任何關於做好社區成員的建議將不被理解。

謝謝,馬克

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>Site Admin</title> 
</head> 

<body> 

<?php 
require_once('connect.php'); 
$stmt = $conn->prepare('SELECT * FROM tblContent'); 
$stmt->execute(); 
$results = $stmt->fetch(); 
?> 



<select name="select1" id="select1"> 
    <option value="null">Choose Page</option> 
    <?php 
    foreach($results as $row) { ?> 
     <option value="<?= $row['content'] ?>"><?= $row['content'] ?></option> 
    <?php 
    } ?> 
</select> 


</body> 

</html> 
+0

的一種方法,使問題更是要告訴我們什麼是真正發生的事情(怪異的行爲,錯誤消息),包括可以從日誌中獲取信息。我們很難在沒有任何背景和任何方式的情況下盯着代碼來運行它,只是告訴你什麼是錯的。 – GolezTrol

+0

'「但只是變得空白」' - 在PHP中,空白頁通常是一個嚴重錯誤的標誌。打開錯誤報告,檢查您的PHP日誌等。 – David

回答

0
<?php 
require_once('connect.php'); //$conn = new PDO('mysql:host=127.0.0.1;dbname=db', 'root', ''); 
$stmt = $conn->prepare('SELECT * FROM tblContent'); 
$stmt->execute(); 
$results = $stmt->fetchAll(PDO::FETCH_ASSOC)[0]; 
?> 

<?php 
foreach($results as $row) { ?> 
    <option value="<?php echo $row['content']; ?>"><?php echo $row['content']; ?></option> 
<?php 
} ?>