PHP表单提交数据,选择选项除外
我有表格,并将数据提交到电子邮件 除选择选项外的所有内容 这里添加了我的php代码和表单代码 我想从数据库中获取列表,并将它们放入选择选项中 提交表单后,应发送所选选项PHP表单提交数据,选择选项除外,php,mysql,Php,Mysql,我有表格,并将数据提交到电子邮件 除选择选项外的所有内容 这里添加了我的php代码和表单代码 我想从数据库中获取列表,并将它们放入选择选项中 提交表单后,应发送所选选项 <?php if(isset($_POST['submit'])){ $to = "synergyacademy2014@gmail.com"; // this is your Email address $from = $_POST['email']; // this is the sender's Emai
<?php
if(isset($_POST['submit'])){
$to = "synergyacademy2014@gmail.com"; // this is your Email address
$from = $_POST['email']; // this is the sender's Email address
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$email = $_POST['email'];
$course = $_POST['course'];
$subject = "Form submission";
$subject2 = "Copy of your form submission";
$message = $first_name . " " . $last_name . " wrote the following:" . "\n\n" . $_POST['message'];
$message2 = "Here is a copy of your message " . $first_name . "\n\n" . $_POST['message'] . $course;
$headers = "From:" . $from;
$headers2 = "From:" . $to;
mail($to,$subject,$message,$headers,$course);
mail($from,$subject2,$message2,$headers2); // sends a copy of the message to the sender
echo "Mail Sent. Thank you " . $first_name . ", we will contact you shortly.";
}
?>
<form action="" method="post">
First Name: <input type="text" name="first_name"><br>
Last Name: <input type="text" name="last_name"><br>
Email: <input type="text" name="email"><br>
Course: <select name="course">
<option>Select Course</option>
<option value="1">MBA</option>
<option value="2">MCA</option>
</select><br>
Message:<br><textarea rows="5" name="message" cols="30"></textarea><br>
<input type="submit" name="submit" value="Submit">
</form>
如果要从数据库获取选项列表,可以尝试使用循环。确保已建立到相应数据库的连接-
<select name="course">
<?php
$tpl_options = "<option>Select Course</option>";
$query = "SELECT column FROM table [WHERE]";
$courses = mysql_query($query);
$i=1;
while($row = mysql_fetch_array($courses)){
$tpl_options .= "<option value='".$i."'>".$row['column']."</option>";
}
?>
</select>
- 为了从表中获取所有行,然后将它们分配给
选项,我们需要首先确定使用什么样的好API,如mysqli
或PDO
- 我们需要首先确定与数据库建立连接所需的数据库和表名
- 在下面的示例代码中,我们选择了
mysqli.*
代码:
建立连接后,我们现在可以从您的数据库获取数据
Course: <select name="course"> <!-- START OF YOUR SELECT -->
<?php
/* REPLACE NECESSARY COLUMN NAMES AND TABLE NAME BELOW */
if($stmt = $con->prepare("SELECT id, course FROM course_table")){ /* PREPARE YOUR QUERY AND CHECK IF YOUR QUERY IS TRUE */
$stmt->execute(); /* EXECUTE THE QUERY */
$stmt->bind_result($id,$course); /* BIND THE RESULTS TO THESE VARIABLES */
while($stmt->fetch()){ /* THEN WE GET ALL THE ROWS BASED FROM THE QUERY WE HAVE CREATED */
echo '<option value="'.$id.'">'.$course.'</option>'; /* STORE THE VALUES WE HAVE FETCHED TO THIS OPTIONS */
} /* END OF WHILE LOOP */
$stmt->close();
} /* END OF YOUR PREPARED STATEMENT */
?>
</select>
课程:
首先是更改您的对不起!输入错误是您知道1
或2
将被传递,而不是MBA
或MCA
?这些值正确吗?要从数据库中获取列表并放置它们而不是选项列表您的数据库的名称是什么?桌子呢?您使用什么APImysql
,mysqli
,PDO
?它没有显示任何内容是的,我得到了列表,但是如何提交它们?你想提交选项吗?如…对于MCA,是否希望将MCA提交到数据库?要提交的内容应为值…如果要提交1,请使用值=1,如果要提交MCA,请使用“$row[column]”;
Course: <select name="course"> <!-- START OF YOUR SELECT -->
<?php
/* REPLACE NECESSARY COLUMN NAMES AND TABLE NAME BELOW */
if($stmt = $con->prepare("SELECT id, course FROM course_table")){ /* PREPARE YOUR QUERY AND CHECK IF YOUR QUERY IS TRUE */
$stmt->execute(); /* EXECUTE THE QUERY */
$stmt->bind_result($id,$course); /* BIND THE RESULTS TO THESE VARIABLES */
while($stmt->fetch()){ /* THEN WE GET ALL THE ROWS BASED FROM THE QUERY WE HAVE CREATED */
echo '<option value="'.$id.'">'.$course.'</option>'; /* STORE THE VALUES WE HAVE FETCHED TO THIS OPTIONS */
} /* END OF WHILE LOOP */
$stmt->close();
} /* END OF YOUR PREPARED STATEMENT */
?>
</select>