Php 在循环未传递到新页面时从内部发布数据

Php 在循环未传递到新页面时从内部发布数据,php,html,mysql,Php,Html,Mysql,我正在使用while填充数据库中的下拉列表。我在查名字。页面将很好地填充列表。当我去提交表单时,while循环中的数据将不会传递到第二页 发送页面中的代码: <?php include 'connect.php'; $TickID = $_POST['ticket']; $EID = $_POST['employee']; $techs = mysql_query("SELECT TechID,fname FROM technician") or die(mysqli_error(

我正在使用while填充数据库中的下拉列表。我在查名字。页面将很好地填充列表。当我去提交表单时,while循环中的数据将不会传递到第二页

发送页面中的代码:

<?php   
include 'connect.php';

$TickID = $_POST['ticket'];
$EID = $_POST['employee'];
$techs = mysql_query("SELECT TechID,fname FROM technician") or die(mysqli_error());

echo "<form action='assign-send.php' method='post'>";
echo "Who would you like to assign this ticket to? <select><option></option>";

while($row = mysql_fetch_assoc($techs, MYSQL_ASSOC)){
    echo "<option  name=\"Tech" . $row['TechID'] . "\" value=" . $row['TechID'] . ">" . $row['fname'] . "</option>";
}
echo "</select> ";

echo "<input type='hidden' name='TickID' value=" . $TickID . ">";
echo "<input type='hidden' name='EID' value=" . $EID . ">";
echo "<input type='submit' name='submit' value='Assign Ticket'>";
echo "</form>";
?>

这是因为您的
没有
名称
标记

应该是:

<select name="TechID">
   <option></option>
</select>

html
SELECT
具有属性
name
选项
没有

<select name="Tech">
    <option value="rowId01">rowName01</option>...
</select>

行名01。。。

具有
名称
属性,而不是
-
回音“警告:如果您只是在学习PHP,请不要学习过时的
mysql\u查询
界面。这很糟糕,在未来的PHP版本中会被删除。一个现代的替代品。像这样的指南可以帮助解释最佳实践。请务必确保您的用户参数是正确的,否则在使用
$\u POST
数据时会遇到严重问题。我不是刚开始使用mysql\u查询的,我知道mysql\u查询已被弃用。现在我只是在使用我知道的whta,在时间允许的情况下学习新的mysqli语法。谢谢你的警告和帮助,这很有效。非常感谢你的帮助。
$my_selected_option = $_POST['TechID']; //The option value selected
<select name="Tech">
    <option value="rowId01">rowName01</option>...
</select>