[英]MySQL query that returns one result
我有一個表格,可以將數據輸入數據庫。 提交表單中的信息后,還將返回該信息,以使用戶知道數據已成功上傳。 目前,正在返回數據庫中的所有數據。 理想情況下,我只希望返回當時提交的數據(應該返回一個結果)。 是否有一個MySQL查詢將允許這樣做? 這是我目前擁有的:
$query = "SELECT * FROM residents";
$result = mysql_query($query);
while($person = mysql_fetch_array($result)) {
echo "<h3>" . $person['FirstName'] . "</h3>";
echo "<p>" . $person['LastName'] . "</p>";
echo "<p>" . $person['Address'] . "</p>";
echo "<p>" . $person['Birthday'] . "</p>";
echo "<p>" . $person['FormerResidence'] . "</p>";
echo "<p>" . $person['Career'] . "</p>";
echo "<p>" . $person['Education'] . "</p>";
echo "<p>" . $person['SpecialInterests'] . "</p>";
echo '<p><img src="upload/' . $person['Picture'].'" width="70" height="70"/></p>';
}
?>
<?php
我也嘗試過:while($ person = mysql_fetch_assoc($ result))仍然返回數據庫中的所有數據,而不僅僅是返回一個結果。
提交表單時,為什么不從加載它的$ _POST或$ _GET數組中取出它呢?
例:
<form method="POST" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"], ENT_QUOTES, "utf-8"); ?>">
<input type="text" name="FirstName">
<input type="text" name="LastName">
etc...
<input type="submit" name="form_btn">
</form>
然后在您的PHP中,您可以回顯提交表單時獲取的$ _POST數組變量:
<?php
//You can put your code that inserts all the form values into the database here.
//And then you can echo out the form data:
if (isset($_POST['form_btn'])) {
echo "<h3>" . $_POST['FirstName'] . "</h3>";
echo "<p>" . $_POST['LastName'] . "</h3>";
}
?>
另外,跳上mysqli火車也是個好主意。 原來的mysql函數已被棄用。
您將收到大量這樣的響應,但是您應該使用未棄用的數據庫方法,例如mysqli 。 這還將為您帶來的好處之一是可以使用-> insertid從上一次查詢中獲取插入ID。 然后,您可以使用它來查詢數據庫中的確切ID,以確保輸入正確。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.