目前無法弄清楚如何在我的輸出HTML頁面的打印函數中正確地轉義php函數。在打印HTML頁面的函數中轉義PHP
例如,我有一個名爲removeClient的頁面,我想根據它的ID刪除一個客戶端。下拉框應該爲用戶提供當前的客戶端ID,他們應該能夠點擊其中一個。
我有一個主頁,根據URL提供的視圖調用函數。
現在,我希望頁面打印帶有由Postgres數據庫提供的ID的下拉菜單,然後用一些表單填寫新的用戶數據。
被調用的函數如下;現在
function removeClient() {
include 'dbconnect.php';
if ((isset($_POST['add']))) {
if (isset($_POST['ID']) && (isset($_POST['FirstName'])) && (isset($_POST['LastName'])) && (isset($_POST['IP'])) && (isset($_POST['Status']))) {
$clientid = $_POST['ID'];
$FirstName = $_POST['FirstName'];
$LastName = $_POST['LastName'];
$ip = $_POST['IP'];
$status = $_POST['Status'];
$result = pg_query($dbconnection, "somequery");
if (@pg_affected_rows($result) === 1) {
echo "<p> Client removed!</p>";
} else {
echo "<p> Something went horribly wrong. Contact a system adminstrator </p>";
}
}
}
echo
"<form name=\"addClient\" method=\"post\" action=\"?view=addClient\"/><br/>" .
"<select name=\"clientID\" id=\"clientID\"> " .
"<td>ID</td> <tr><input type=\"text\" maxlength=\"32\" name=\"ID\" /></tr><br/>" .
"<td>First Name</td> <tr><input type=\"text\" maxlength=\"32\" name=\"FirstName\" /></tr><br/>" .
"<td>Last Name</td> <tr><input type=\"text\" maxlength=\"32\" name=\"LastName\" /></tr><br/>" .
"<td>IP Addr.</td> <tr><input type=\"text\" maxlength=\"32\" name=\"IP\" /></tr><br/>" .
"<td>Status</td> <tr><input type=\"text\" maxlength=\"32\" name=\"Status\" /></tr><br/>" .
"<input type=\"submit\" name=\"add\" value=\"Send\" /></form><br/>";
}
,我想要做的是改變線 「」。
到Postgres通過PHP加載她的數據庫值的行。
對於PHP部分,我得到了這個;
<option>Select userID</option>
<?php
$db = pg_connect("connection details") or die('Could not connect: ' . pg_last_error());
$sql = pg_query("SELECT title FROM books WHERE ownedby='$user_id'";
while ($row = pg_fetch_assoc($sql)) {
echo '<option value="'.htmlspecialchars($row['title']).'"></option>';}
pg_close($db);
?>
</select>
<input type="hidden" name="userid" id="userid" value="<?php echo htmlspecialchars($user_id); ?>">
現在,我不確定如何在回顯調用打印HTML頁面中實現此操作。我試圖做很多轉義,但還沒有幫助。我如何有效地將這段代碼添加到我的表單結構中,在php中echo'd?
您HABE無 「選項標籤」 的所有選項設置。該選項的標籤位於''之間,如果您選擇特定的選項標籤,'value'屬性將定義要提交的值。 – TiMESPLiNTER