PHP-HTML形式,连接select框选项
PHP - HTML form, connecting with select box options
对于这个项目,我有一个上传页面供用户上传一个 CSV 文件,该文件在单个暂存中插入到数据库中 table。从那里开始,一些东西被拆分并插入到单独的 table 中。每个CSV有2到8行,每行有228个字段,所以我的staging有228列table.
上传后,用户可以转到页面 (userSelect.php) 并使用下拉菜单帮助 select 工作订单查看它将在多个 table 中显示的位置.
upload/insert 效果很好,下拉菜单正在正确填充数据库中的元素,但我似乎无法将 select 离子连接到 table 页面。
例如,如果用户 selects "Work Order Packet" 下拉菜单并选择 'February Zone B1',我希望它显示与数据库中包含此工作订单数据包的任何记录的链接姓名。然后,一旦他们 select 他们想要的记录,我希望 display.php 页面使用我假设的 id 使用该特定记录中的 228 个元素填充所有 table 。
我在下面有这两个页面的代码。 userSelect 页面目前没有任何代码可以将数据库记录显示为链接,所以我希望弄清楚如何显示这些,然后使用用户 selects 来填充 tables 在显示页面上。
userSelect.php
<form method="post" action="display.php" enctype="multipart/form-data">
<input type="submit" name="submit" value="Confirm" >
</form>
<?php
$server = "localhost";
$user = "root";
$pw = "root";
$db = "uwsTest";
$connect = mysqli_connect($server, $user, $pw, $db);
if ($connect->connect_error) {
die("Connection failed: " . $conn->connect_error);
}else{
echo'success!';
}
?>
<label>Select Work Order Packet:</label>
<select name="workOrderPacket">
<?php
$sql = mysqli_query($connect, "SELECT workOrderPacket FROM staging;");
while($row = $sql->fetch_assoc()){
echo "<option >" . $row['workOrderPacket'] . "</option>";
}
?>
</select>
<label>Select Work Order ID:</label>
<select name="WorkOrderNumber">
<?php
$sql2 = mysqli_query($connect, "SELECT workOrderNum FROM staging;");
while($row2 = $sql2->fetch_assoc()){
echo "<option>" . $row2['workOrderNum'] . "</option>";
}
?>
</select>
display.php
<?php
if(isset($_POST['submit']))
{
while($row = mysqli_fetch_array($result1)){
?>
<!--Qa Table-->
<table>
<tr>
<th colspan="2">Qa/Qc CheckList</th>
</tr>
<tr>
<td>Service Address Correct</td>
<td><? echo $row['serviceAddress'];?> </td>
</tr>
<tr>
<td>Service Loc Correct</td>
<td><? echo $row['serviceLoc'];?> </td>
</tr>
<tr>
<td>Meter Number Correct</td>
<td><? echo $row['meterNumber'];?> </td>
</tr>
<tr>
<td>Meter Manufacturer Changed</td>
<td><? echo $row['meterManufacturer'];?> </td>
</tr>
<tr>
<td>Meter Type Changed</td>
<td><? echo $row['meterType'];?> </td>
</tr>
<tr>
<td>Meter Model Changed</td>
<td><? echo $row['meterModel'];?> </td>
</tr>
<tr>
<td>Low Register Correct</td>
<td><? echo $row['registerCorrect'];?> </td>
</tr>
<tr>
<td>High Register Correct</td>
<td><? echo $row['registerCorrect'];?> </td>
</tr>
</table>
更新 - 未完成 SQL 对 display.php 的查询:
$query1 = "SELECT * FROM staging WHERE StageID = ;";
$result1 = mysqli_query($connect,$query1);
您将需要更新您的 SQL 语句以过滤相关结果。
SELECT workOrderNum FROM staging WHERE workOrderPacket = '.$_REQUEST["workOrderPacket"] ';
对于这个项目,我有一个上传页面供用户上传一个 CSV 文件,该文件在单个暂存中插入到数据库中 table。从那里开始,一些东西被拆分并插入到单独的 table 中。每个CSV有2到8行,每行有228个字段,所以我的staging有228列table.
上传后,用户可以转到页面 (userSelect.php) 并使用下拉菜单帮助 select 工作订单查看它将在多个 table 中显示的位置.
upload/insert 效果很好,下拉菜单正在正确填充数据库中的元素,但我似乎无法将 select 离子连接到 table 页面。
例如,如果用户 selects "Work Order Packet" 下拉菜单并选择 'February Zone B1',我希望它显示与数据库中包含此工作订单数据包的任何记录的链接姓名。然后,一旦他们 select 他们想要的记录,我希望 display.php 页面使用我假设的 id 使用该特定记录中的 228 个元素填充所有 table 。
我在下面有这两个页面的代码。 userSelect 页面目前没有任何代码可以将数据库记录显示为链接,所以我希望弄清楚如何显示这些,然后使用用户 selects 来填充 tables 在显示页面上。
userSelect.php
<form method="post" action="display.php" enctype="multipart/form-data">
<input type="submit" name="submit" value="Confirm" >
</form>
<?php
$server = "localhost";
$user = "root";
$pw = "root";
$db = "uwsTest";
$connect = mysqli_connect($server, $user, $pw, $db);
if ($connect->connect_error) {
die("Connection failed: " . $conn->connect_error);
}else{
echo'success!';
}
?>
<label>Select Work Order Packet:</label>
<select name="workOrderPacket">
<?php
$sql = mysqli_query($connect, "SELECT workOrderPacket FROM staging;");
while($row = $sql->fetch_assoc()){
echo "<option >" . $row['workOrderPacket'] . "</option>";
}
?>
</select>
<label>Select Work Order ID:</label>
<select name="WorkOrderNumber">
<?php
$sql2 = mysqli_query($connect, "SELECT workOrderNum FROM staging;");
while($row2 = $sql2->fetch_assoc()){
echo "<option>" . $row2['workOrderNum'] . "</option>";
}
?>
</select>
display.php
<?php
if(isset($_POST['submit']))
{
while($row = mysqli_fetch_array($result1)){
?>
<!--Qa Table-->
<table>
<tr>
<th colspan="2">Qa/Qc CheckList</th>
</tr>
<tr>
<td>Service Address Correct</td>
<td><? echo $row['serviceAddress'];?> </td>
</tr>
<tr>
<td>Service Loc Correct</td>
<td><? echo $row['serviceLoc'];?> </td>
</tr>
<tr>
<td>Meter Number Correct</td>
<td><? echo $row['meterNumber'];?> </td>
</tr>
<tr>
<td>Meter Manufacturer Changed</td>
<td><? echo $row['meterManufacturer'];?> </td>
</tr>
<tr>
<td>Meter Type Changed</td>
<td><? echo $row['meterType'];?> </td>
</tr>
<tr>
<td>Meter Model Changed</td>
<td><? echo $row['meterModel'];?> </td>
</tr>
<tr>
<td>Low Register Correct</td>
<td><? echo $row['registerCorrect'];?> </td>
</tr>
<tr>
<td>High Register Correct</td>
<td><? echo $row['registerCorrect'];?> </td>
</tr>
</table>
更新 - 未完成 SQL 对 display.php 的查询:
$query1 = "SELECT * FROM staging WHERE StageID = ;";
$result1 = mysqli_query($connect,$query1);
您将需要更新您的 SQL 语句以过滤相关结果。
SELECT workOrderNum FROM staging WHERE workOrderPacket = '.$_REQUEST["workOrderPacket"] ';