[英]How to check for 2 conditional statements where both must be met, while looping through each row in database array? PHP / MySql
[英]Looping through an mysql array and printing each row into a <select>
我想從一個表的一列中檢索每一行,並將所有這些都放入一個元素中。 我現在幾乎在黑暗中掙扎,我在做什么錯/想念?
$db_connect = mysql_connect("$host", "$db_username", "$db_password");
$db_select = mysql_select_db("$db_name");
mysql_set_charset('utf8', $db_connect);
$db_query_project="SELECT * FROM $tbl_name";
print('<form name="report" method="post" action="">');
print('<label for="project">Projekt </label>');
print('<select name="project_select">');
print('<option>Test</option>');
foreach ($db_query_project as $key => $value){
print('<option>'.$key['project_name'].'</option>');
}
print('</select>');
print('</form>');
有沒有更好的方法可以做到這一點?
您需要連接到數據庫並執行查詢,以便檢索數據並獲取數據。 為此,可以使用mysqli或PDO 。 這是一個有關如何使用mysqli從具有列project_name
的表$tbl_name
獲取數據的示例。
$mysqli = new mysqli("localhost", "user", "password", "database");
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ")";
exit();
}
$query = "SELECT * FROM `$tbl_name`";
if ($result = $mysqli->query($query)) {
/* fetch associative array */
while ($row = $result->fetch_assoc()) {
printf ("%s \n", $row["project_name"]);
}
/* free result set */
$result->free();
}
/* close connection */
$mysqli->close();
我更喜歡這個:
function getFieldSelect($name, $selected, $values, $attributes) {
$r = "<select name=\"$name\" $attributes>";
foreach ($values as $k => $v) {
if ($k == $selected) {
$sel = "selected";
} else {
$sel = "";
}
$r .= "<option value=\"$k\" $sel>$v</option>\n";
}
$r .= "</select>";
return $r;
}
我從數據庫中獲取了值,並將其以數組格式提供給我的函數。 我認為這是打印選擇字段的最靈活的方法。 您可以使用數據庫來獲取值或任何數組。
<?php
$db_query_project= mysql_query("SELECT * FROM $tbl_name");
echo '<form name="report" method="post" action="">';
echo '<label for="project">Projekt </label>';
echo '<select name="project_select">';
echo '<option>Test</option>';
while( $row = mysql_fetch_assoc( $db_query_project ) )
{
echo '<option>'.$row['project_name'].'</option>';
}
echo '</select>';
echo '</form>';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.