如何将 <select> 中的选项放入变量以填充 MySQL 中的 table
How to put an option from <select> into a variable to populate a table in MySQL
我是一名意大利高中生,今天我的教授给我布置了一个简单的作业:
我必须创建一个 PHP 页面,其基本形式允许我将新的 "student" 引入 MySQL、[=25= 中的 table ]、"surname" 和 "class"。
那是 PHP 页面:
<html>
<head>
<title> School </title>
</head>
<body>
<?php
$name="";
$surname="";
$conn=mysqli_connect("127.0.0.1","root","");
if(!$conn){ echo 'No connection.'; die;}
if(!mysqli_select_db($conn,"School")) { echo 'Err'; die;}
$result=mysqli_query($conn,"select * from classes");
if(!isset($_REQUEST["submit"])){
echo '<form action="" method="post">
<input type="text" name="name" size="26"> Name <br><br>
<input type="text" name="surname" size="26"> Surname <br><br>
<input type="submit" name="submit" value="Submit">';
if(mysqli_num_rows($result)!=0){
echo '<select name="combobox" id="combobox">
<option value="" selected="selected"> Classes list </option>';
while($combobox=mysqli_fetch_assoc($result)){
$classes=$combobox["classes"];
echo '<option value="'.$combobox["classes"].'">'.$combobox["classes"].'</option>';
}
echo '</select><br><br>';
}
echo '</form>';
}
else{
$name=$_REQUEST["name"];
$surname=$_REQUEST["surname"];
//$query='insert into Students(name,surname,classes) values("'.$name.'","'.$surname.'","'.$classes.'");';
//if(!mysqli_query($conn,$query)) { echo 'Err'; die; }
echo 'Success! <br> Name: '.$name.' <br> Surname: '.$surname.'<br> Class: '.$classes.'<br>';
}
?>
</body>
</html>
我已经创建了包含我需要的所有 table 的数据库。现在,问题是,如何将我从 <select>
中选择的 "option" 放入一个变量中,以便我可以将它用于 insert into
?我找到的所有内容都只是 "filling a combobox from mysql".
总是给你的表单元素一个 name
,这就是它被发送到后端的方式。使用 <select>
,所选元素的值将通过您给它的名称发送到您的代码。执行此操作后,您可以在代码末尾为其添加一个变量。
<?php
$servername = "localhost";
$username = "username";
$password = "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 = "INSERT INTO MyDB (firstname, lastname, email)
VALUES ('John', 'Doe', 'john@example.com')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
这是你应该遵循的。
要获取 select 的值,请为其命名,然后使用 $_GET['name']
或 $_POST['name']
获取其名称后,如果您选择 method="post"
,您将获得 select编辑选项值。
html:
<form method="get" action="/script.php">
<select name="name"><option>1</option></select>
<input type="submit" value="send">
</form>
php:
$value=$_GET['name'];
echo $value;
我是一名意大利高中生,今天我的教授给我布置了一个简单的作业:
我必须创建一个 PHP 页面,其基本形式允许我将新的 "student" 引入 MySQL、[=25= 中的 table ]、"surname" 和 "class"。
那是 PHP 页面:
<html>
<head>
<title> School </title>
</head>
<body>
<?php
$name="";
$surname="";
$conn=mysqli_connect("127.0.0.1","root","");
if(!$conn){ echo 'No connection.'; die;}
if(!mysqli_select_db($conn,"School")) { echo 'Err'; die;}
$result=mysqli_query($conn,"select * from classes");
if(!isset($_REQUEST["submit"])){
echo '<form action="" method="post">
<input type="text" name="name" size="26"> Name <br><br>
<input type="text" name="surname" size="26"> Surname <br><br>
<input type="submit" name="submit" value="Submit">';
if(mysqli_num_rows($result)!=0){
echo '<select name="combobox" id="combobox">
<option value="" selected="selected"> Classes list </option>';
while($combobox=mysqli_fetch_assoc($result)){
$classes=$combobox["classes"];
echo '<option value="'.$combobox["classes"].'">'.$combobox["classes"].'</option>';
}
echo '</select><br><br>';
}
echo '</form>';
}
else{
$name=$_REQUEST["name"];
$surname=$_REQUEST["surname"];
//$query='insert into Students(name,surname,classes) values("'.$name.'","'.$surname.'","'.$classes.'");';
//if(!mysqli_query($conn,$query)) { echo 'Err'; die; }
echo 'Success! <br> Name: '.$name.' <br> Surname: '.$surname.'<br> Class: '.$classes.'<br>';
}
?>
</body>
</html>
我已经创建了包含我需要的所有 table 的数据库。现在,问题是,如何将我从 <select>
中选择的 "option" 放入一个变量中,以便我可以将它用于 insert into
?我找到的所有内容都只是 "filling a combobox from mysql".
总是给你的表单元素一个 name
,这就是它被发送到后端的方式。使用 <select>
,所选元素的值将通过您给它的名称发送到您的代码。执行此操作后,您可以在代码末尾为其添加一个变量。
<?php
$servername = "localhost";
$username = "username";
$password = "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 = "INSERT INTO MyDB (firstname, lastname, email)
VALUES ('John', 'Doe', 'john@example.com')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
这是你应该遵循的。
要获取 select 的值,请为其命名,然后使用 $_GET['name']
或 $_POST['name']
获取其名称后,如果您选择 method="post"
,您将获得 select编辑选项值。
html:
<form method="get" action="/script.php">
<select name="name"><option>1</option></select>
<input type="submit" value="send">
</form>
php:
$value=$_GET['name'];
echo $value;