如何获取与在下拉列表中选择的列关联的整行?

我制作了一个下拉列表,它从数据库中获取数据(名称)并显示在下拉列表的选项中。现在我试图从列表中获取该选定名称的整行,并希望将每个数据保存到一个变量中以供进一步使用。谁能指导我...这是我在 PHP/MySQL 中的第一个项目,请帮助我...


这是我的下拉列表代码:


<form action="sel2.php" method="post">

  Player:

  <select name="data[]" multiple>

    <option disabled selected>-- Select Player --</option>

    <?php

        

        $records = mysqli_query($con, "SELECT * From bat");  // Use select query here 


        while($data = mysqli_fetch_array($records))

        {

            echo "<option value='". $data['name'] ."'>" .$data['name'] ."</option>";  // displaying data in option menu

        }   

        


    

  echo "</select>";


    



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

echo "</form>";

?>

我已经设法获取名称并将其存储到一个变量中:


<?php 


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

        if(!empty($_POST['data'])) {

          foreach($_POST['data'] as $selected){

            $curdata = $selected;           

          }

            

          

        } else {

          echo 'Please select the value.';

        }


      }


?>

我设法在另一个页面 (sel.php) 中得到了回应:


<!DOCTYPE html>

<html>

<head>

  <title>PHP Retrieve Data</title>

  

  <?php include "connection.php"; 

        include "sel2.php";// Using database connection file here ?>

</head>

<body>

<center>

<?php


echo $curdata, "<br>" , $batq;

?>



</center>

</body>


</html>

但是我如何存储该特定行的所有值,例如:


$id = //id of selected name from dropdown list

$age = //age of selected name from dropdown list

等等等等


胡子哥哥
浏览 80回答 1
1回答

POPMUISE

$_POST['data']是一个名称数组,因为您$data['name']在之前的脚本中用它填充了它。没有比名称更多的数据要存储......为此,您可以例如序列化记录:&nbsp; &nbsp; &nbsp; &nbsp; while($data = mysqli_fetch_array($records))&nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo "<option value='". serialize($data) ."'>" .$data['name'] ."</option>";&nbsp; // displaying data in option menu&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp;现在您将在参数上获得一系列序列化记录$POST['data']:首先,反初始化:$curdata = unserialize($selected);然后访问您需要的任何字段echo $curdata['age'];哦,请记住这一点,如果您在 foreach 内部分配$curdata... $selected$curdata 将始终是最后一个$POST['data']元素,我认为在这种情况下您不需要 foreach。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript