Я не знаю, повторяется ли это вопрос. Но я просто хочу знать, как автоматически заполнить мой тег <option> данными из моей базы данных.
CREATE TABLE `Users` (
`ID` INT(11) NOT NULL AUTO_INCREMENT,
`Names` VARCHAR(50) NOT NULL DEFAULT '0',
`Suranme` VARCHAR(50) NOT NULL DEFAULT '0',
`Age` VARCHAR(50) NOT NULL DEFAULT '0'
PRIMARY KEY (`ID`)
)
Моя база данных
<select name = "Names">
<option value = "1">Jhon</option>
<option value = "2">Will</option>
<option value = "3">Jack</option>
<option value = "4">Adam</option>
</select>
Вопрос : Как мне автоматически заполнить мой <option> именами из таблицы базы данных Names






## Я предполагаю, что здесь образец базы данных ##
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT Names FROM Users";
$result = $conn->query($sql);
echo "<select name = "Names">";
if ($result->num_rows > 0) {
// output data of each row
$i=1;
while($row = $result->fetch_assoc()) {
echo "<option value=$i>".$row["Names"]."</option>";
$i++;
}
echo "</select>";
}
$conn->close();
?>
Это один из подходов, который вы можете использовать по своему усмотрению, вы можете создать для этого отдельную функцию.
Я не знаю, какую базу данных вы используете, так как ваш вопрос неясен. Я пытался дать вам представление о том, как это может быть работает.
<?php
$fetchname = "SELECT `Names` FROM `users`";
$fetched = mysqli_query($con,$fetchname);
while($row = mysqli_fetch_array($fetched,MYSQLI_ASSOC)){ ?>
<select name = "Names">
<option value = ""><?php echo $row['names']; ?></option>
</select>
<?php } ?>
Это простая проблема с foreach.
<?php
$con = mysqli_connect('localhost','root','user','password');
$sql = 'SELECT * FROM Users';
$result = mysqli_query($con,$sql);
$names = mysqli_fetch_all($result, MYSQLI_ASSOC);
$i = 0;
?>
<html>
<body>
<form>
<select name = "Names">
<?php foreach($names as $name):?>
<option value = "<?php echo $i++; ?>"><?php echo $name['Names'];?></option>
<?php endforeach;?>
</select>
</form>
</body>
</html>
<?php
$db['db_host'] = 'localhost';
$db['db_user'] = 'root';
$db['db_pass'] = '';
$db['db_name'] = 'db';
foreach ($db as $key => $value) {
define(strtoupper($key), $value);
}
$conn = mysqli_connect(DB_HOST,DB_USER,DB_PASS,DB_NAME);
if (!$conn){
die("Unable to connect");
}
$sql_query = "SELECT Names FROM Users";
$result = mysqli_query($conn,$sql_query);
echo "<select name = "Names">";
if (mysqli_num_rows($result)> 0) {
$i=1;
while($row = mysqli_fetch_array($result) {
echo "<option value=$i>".$row["Names"]."</option>";
$i++;
}
echo "</select>";
}
?>
Что вы пробовали до сих пор и в чем именно заключалась проблема?