PHP使用mySQL-db的下拉值

时间:2015-04-20 11:38:20

标签: php mysql forms drop-down-menu

所以我终于想出了如何从mySQL-db中将值从PHP下拉到表格中。我的问题是,我如何使用/使用用户选择的选项? 我的目标是运行电子邮件签名生成器。我希望用户能够插入像他们的名字这样的唯一数据,并从下拉表单中选择他们工作的办公室。在他们点击提交按钮后,他们应该通往下一个显示所选办公室签名的网站。 名称没有问题,这只是一个带有post方法的简单html表单,我知道如何检索和访问它。 但是,如何使用用户在下拉列表中选择的选项? 选择一个选项并点击提交后,整个"行"在mySQL-db中应该以格式化形式显示。

我目前的情况是,下拉列表显示了来自mySQL-db的正确值,以及两个名称字段,它们也正常工作。 mySQL数据库的名称是" firmen",我使用的列的名称是" niederlassung"。

如果需要,我很乐意提供更多信息。 我的代码:

[...]
<form action="php-verarbeitung.php" method="post">
<div>
  <label for="1">Vorname: </label>
  <input type="text" name="vorname" id="1" value=""><br><br>
</div> 
<div>
  <label for="2">Nachname: </label>
  <input type="text" name="name" id="2" value=""><br><br>
</div> 

<input type = "submit" name = "button" value = "Senden"><br><br>


<?php
// Establish mySQL PDO Connection
$server='mysql:host=*****.com.mysql;dbname=*****'; // Host and DB-Name
$user="******";       // Username
$password="*****";          // Password

$pdo=new PDO($server, $user, $password);

$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

// Write out the query
$query = "SELECT niederlassung FROM firmen";

// Execute it, or let it throw an error message if there's a problem
$stmt = $pdo->query($query);

$dropdown = "<SELECT name='firmen'>";
foreach ($stmt as $row) {
  $dropdown .= "\r\n<option value='{$row['niederlassung']}'>{$row['niederlassung']}</option>";
}
$dropdown .= "\r\n</select>";
echo $dropdown;
?>
</form>
</body>
</html>

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您将表单中的变量传递给php-verarbeitung.php。在该页面上,您可以根据通过表单发送的$ _POST变量加载内容。因此,您可以在第二页上再次查询数据库以获取所需的信息,并使用通过post数组传递的表单中的值来呈现格式化的html,在您的情况下 当使用上面的脚本调用php-verarbeitung.php页面时,$ _POST ['vorname'],$ _POST ['name']和$ _POST ['firmen']应该都可以访问。