gpt4 book ai didi

php - 将 MYSQL 数据插入与下拉菜单中的字段关联的数据库表

转载 作者:行者123 更新时间:2023-11-29 18:36:37 25 4
gpt4 key购买 nike

问题:我需要将附加数据插入与使用下拉菜单选择的记录关联的数据库表中。

我正在用 MySQL 表中的网球运动员姓名填充下拉菜单,称为“Player”。 DB 表的行包含 3 列:唯一 ID、玩家姓氏和名字。下拉列表显示姓氏和名字。

目前,用户可以选择一名球员,按下提交按钮后,其姓氏将被正确插入到另一个数据库表(Staging 表)中。 但我还需要插入玩家 ID 和名字,但我无法将正确的 ID 和名字也插入到暂存表中。

我似乎无法找到一种将其他数据与从下拉菜单中进行的用户选择相关联的方法。

社区中的任何人都可以建议更改以下代码,使玩家 ID 和名字能够与姓氏同时插入到暂存表中。

社区可以提供的任何帮助将不胜感激。代码如下:

<?php 
$link = mysqli_connect("localhost", "root","","Tennis") or die("Could not connect: ".mysql_error());

if (isset($_POST['submitted'])) {

$surname=$_POST['winner'];

$id = $_POST['ID'];
$firstname = $_POST['firstname'];

// Insert into database what the user selected.
$qresult = mysqli_query($link,"insert into staging (ID,surname,firstname) values ('$id','$surname','$firstname')");

} // end of the main submit condition.


?>
<h1>Tennis Tournament</H1>

<?php
// Fetch player data to populate drop down menu.
$selectSQL = "SELECT * FROM PLAYER ORDER BY SURNAME";
$selectSQL = mysqli_query($link, $selectSQL );

echo '<form method="post" action="Tennis2.php"><br>';

// Drop down menu.
echo '<select name="winner">';

while ($row=mysqli_fetch_array($selectSQL,MYSQLI_BOTH)) {
$id = $row['ID'];
$firstname = $row['FIRSTNAME'];
echo '<option value="'.$row['SURNAME'].'">'.$row['SURNAME'].' '.$row['FIRSTNAME'].'</option>';
}
echo '</select>';

echo '<input type="submit" name="submit" />';
echo '<input type="hidden" name="ID" value="'.$id.'" />';
echo '<input type="hidden" name="submitted" value="1" />';
echo '<input type="hidden" name="firstname" value="'.$firstname.'" />';
echo '</form>';

mysqli_free_result($selectSQL);

?>

最佳答案

Page.php

在选项值中传递ID。不需要隐藏字段。

<?php 
// Fetch player data to populate drop down menu.
$selectSQL = "SELECT * FROM PLAYER ORDER BY SURNAME";
$selectSQL = mysqli_query($link, $selectSQL );

echo '<form method="post" action="Tennis2.php"><br>';

// Drop down menu.
echo '<select name="winner">';
while ($row=mysqli_fetch_array($selectSQL,MYSQLI_BOTH)) {
echo '<option value="'.$row['ID'].'">'.$row['SURNAME'].' '.$row['FIRSTNAME'].'</option>';
}
echo '</select>';

echo '<input type="submit" name="submit" />';
echo '</form>';

mysqli_free_result($selectSQL);

?>

Tennis2.php

捕获从下拉列表传递的 ID 并获取其相关数据(例如姓氏、名字)并将其插入到临时表中。

<?php 
$link = mysqli_connect("localhost", "root","","Tennis") or die("Could not connect: ".mysql_error());

if (isset($_POST['submit'])) {

$id_selected = $_POST['winner'];

$selectSQLquery = "SELECT * FROM PLAYER WHERE ID = $id_selected LIMIT 0,1";
$selectSQL = mysqli_query($link, $selectSQLquery );

$row = mysqli_fetch_array($selectSQL,MYSQLI_BOTH);
$surname = $row['SURNAME'];
$firstname = $row['FIRSTNAME'];

// Insert into database what the user selected.
$qresult = mysqli_query($link,"INSERT INTO staging (ID,surname,firstname) values ('$id','$surname','$firstname')");

} // end of the main submit condition.
?>

关于php - 将 MYSQL 数据插入与下拉菜单中的字段关联的数据库表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45239160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com