Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 显示从下拉列表中检索的数据_Php_Javascript - Fatal编程技术网

Php 显示从下拉列表中检索的数据

Php 显示从下拉列表中检索的数据,php,javascript,Php,Javascript,我需要帮助。我想显示用户从3个下拉列表中选择的三个数据值。 我创建了三个下拉列表,其中用户将从数据库中为每个选项选择3个不同的选项,然后用户将选择的任何选项都必须显示在表中。例如,如果用户选择111作为选择id,选择222作为夹具id,那么Jesty作为名称,它应该显示为 111 222 Jesty在一张桌子上。 现在我只有从数据库中检索信息然后显示dop DONS的下拉列表。。。。我需要一种显示用户选择的方式,或者javascript,它将向用户打印他选择的内容 这是我的3个下拉列表 requ

我需要帮助。我想显示用户从3个下拉列表中选择的三个数据值。 我创建了三个下拉列表,其中用户将从数据库中为每个选项选择3个不同的选项,然后用户将选择的任何选项都必须显示在表中。例如,如果用户选择111作为选择id,选择222作为夹具id,那么Jesty作为名称,它应该显示为 111 222 Jesty在一张桌子上。 现在我只有从数据库中检索信息然后显示dop DONS的下拉列表。。。。我需要一种显示用户选择的方式,或者javascript,它将向用户打印他选择的内容

这是我的3个下拉列表

require "config.php"; //Database connection
    $resource_selections = mysql_query("SELECT DISTINCT selection_id FROM selections ORDER BY selection_id ASC");
    $selections = array();
    while($row = mysql_fetch_row($resource_selections)){
        $selections[] = $row[0];    
    } 
    $resource_fixtures = mysql_query("SELECT DISTINCT fixture_id FROM selections ORDER BY selection_id ASC"); 
    $fixtures = array();
    while($row = mysql_fetch_row($resource_fixtures)){
        $fixtures[] = $row[0];
    } 
    $resource_names   = mysql_query("SELECT DISTINCT name FROM selections ORDER BY selection_id ASC");    
    $names = array();
    while($row = mysql_fetch_row($resource_names)){
        $names[] = $row[0];
    }
    if(count($selections) <= 0 || count($fixtures) <= 0 || count($names) <= 0){
        echo 'No results have been found.';
    } else {

        // Display form
        echo '<form name="form" method="post" action="selection.php">';

        //SelectionID dropdown:
        echo "<select name='selection_id' id='selections' >"; 
        foreach($selections as $selection) echo "<option id='$selection'>$selection</option>";
        echo '</select>';

        //FixtureID dropdown
        echo "<select name='fixture_id' id='fixtures' >"; 
        foreach($fixtures as $fixture) echo "<option id='$fixture'>$fixture</option>";
        echo '</select>';

        //Name dropdown
        echo "<select name='name' id='names' >"; 
        foreach($names as $name) echo "<option id='$name'>$name</option>";
        echo '</select>';

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




        echo '</form>';



    }


    ?>
需要“config.php”//数据库连接
$resource\u selections=mysql\u query(“按selection\u id ASC从selections ORDER中选择不同的selection\u id”);
$selections=array();
而($row=mysql\u fetch\u row($resource\u selections)){
$selections[]=$row[0];
} 
$resource_fixtures=mysql_query(“按选择_id ASC从选择顺序中选择不同的fixture_id”);
$fixtures=array();
而($row=mysql\u fetch\u row($resource\u fixtures)){
$fixtures[]=$row[0];
} 
$resource\u names=mysql\u query(“按选择顺序选择不同的名称\u id ASC”);
$names=array();
while($row=mysql\u fetch\u row($resource\u names)){
$names[]=$row[0];
}
如果(计数($selections)
您可以这样尝试

    <script type="text/javascript">

    function mergeval(val,flag)
    {
      if(flag==1)
      document.getElementById('mvalue1').innerHTML = val ;
      else if(flag==2)
      document.getElementById('mvalue2').innerHTML = val;
      else if(flag==3)
      document.getElementById('mvalue3').innerHTML = val;
    }

    </script>
<?php
session_start();
$_SESSION['values']=!empty($_SESSION['values']) ? $_SESSION['values']:array();
if(!empty($_REQUEST['selection_id'])&&!empty($_REQUEST['fixture_id'])&&!empty($_REQUEST['name']))
{
 $_SESSION['values'][] = array('id'=>$_REQUEST['selection_id'],'fid'=>$_REQUEST['fixture_id'],'name'=>$_REQUEST['name']);
}
$dispval ="<table>";

foreach(@$_SESSION['values'] as $key=>$val)
{

$dispval .="<tr><td>".$val['id']."&nbsp;".$val['fid']."&nbsp;".$val['name']."</td></tr>";

}
$dispval .="</table>";
echo $dispval;

?>
    <?php
    require "config.php"; //Database connection
        $resource_selections = mysql_query("SELECT DISTINCT selection_id FROM selections ORDER BY selection_id ASC");
        $selections = array();
        while($row = mysql_fetch_row($resource_selections)){
            $selections[] = $row[0];    
        } 
        $resource_fixtures = mysql_query("SELECT DISTINCT fixture_id FROM selections ORDER BY selection_id ASC"); 
        $fixtures = array();
        while($row = mysql_fetch_row($resource_fixtures)){
            $fixtures[] = $row[0];
        } 
        $resource_names   = mysql_query("SELECT DISTINCT name FROM selections ORDER BY selection_id ASC");    
        $names = array();
        while($row = mysql_fetch_row($resource_names)){
            $names[] = $row[0];
        }
        if(count($selections) <= 0 || count($fixtures) <= 0 || count($names) <= 0){
            echo 'No results have been found.';
        } else {

            // Display form
            echo '<form name="form" method="post" action="selection.php">';

            //SelectionID dropdown:
            echo "<select name='selection_id' id='selections' onchange='javascript:mergeval(this.value,1)'>"; 
            foreach($selections as $selection) echo "<option id='$selection'>$selection</option>";
            echo '</select>';

            //FixtureID dropdown
            echo "<select name='fixture_id' id='fixtures' onchange='javascript:mergeval(this.value,2)' >"; 
            foreach($fixtures as $fixture) echo "<option id='$fixture'>$fixture</option>";
            echo '</select>';

            //Name dropdown
            echo "<select name='name' id='names' onchange='javascript:mergeval(this.value,3)'>"; 
            foreach($names as $name) echo "<option id='$name'>$name</option>";
            echo '</select>';

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




            echo '</form>';



        }


        ?>
    <table>
    <tr><td >&nbsp;<span id="mvalue1"></span>&nbsp;<span id="mvalue2"></span>&nbsp;<span id="mvalue3"></span></td></tr>
    </table>

函数mergeval(val,flag)
{
如果(标志==1)
document.getElementById('mvalue1')。innerHTML=val;
else if(标志==2)
document.getElementById('mvalue2')。innerHTML=val;
else if(标志==3)
document.getElementById('mvalue3')。innerHTML=val;
}

您可以使用jquery函数实现它,我会为您粘贴代码。 下面是一个脚本:

     <script language="JavaScript" type="text/javascript">
     $(document).ready(function(){
         $(".testval1").live('change',function(){
         var x = $(this).val();
         if(x!='')
         {
            $(".displaydata").append("<td>"+x+"</td>");
         }
         });
     });
    </script>

$(文档).ready(函数(){
$(“.testval1”).live('change',function(){
var x=$(this.val();
如果(x!='')
{
$(“.displaydata”).append(“+x+”);
}
});
});
这里是html

 <body>
 <form>
    <select name='testval1' class='testval1'>
       <option value=''>select data</option>
       <option value="110">110</option>
       <option value="111">111</option>
    </select>
  <select name='testval2' class='testval1'>
      <option value=''>select data</option>
      <option value="2223">2223</option>
      <option value="222">222</option>
  </select>
  <select name='testval3' class='testval1'>
      <option value=''>select data</option>
      <option value="Jestysd">Jestysd</option>
      <option value="Jesty">Jesty</option>
  </select>
  <table class="displaydata">
  </table>
  </form>

选择数据
110
111
选择数据
2223
222
选择数据
杰斯蒂德
杰斯蒂
为此,您需要添加jquery-1.9.1.min.js。这是最好的选择

如果我按表单的提交按钮(echo“”;),它不会显示但是没有显示错误。我已经在本地主机中检查了这一点,工作正常。它显示了表中三个选择框中的三个值。你是否添加了我添加的所有代码。如果有任何javascript错误,你也可以检查控制台…你缺少一些东西…首先,你能在t中看到所选的值吗表单提交前的表格?是否也要显示表单提交后选择的值?它现在在@santuma.工作。但每个显示通知都会显示以下消息:使用未定义的常量选择\u id-在C:\Program Files\EasyHP-5.3.3\www\selections.php的第67行1注意:使用未定义的常量_id-第67 183行C:\Program Files\EasyHP-5.3.3\www\selections.php中假定的“fixture\u id”注意:使用未定义的常量名称-第67行C:\Program Files\EasyHP-5.3.3\www\selection.php中假定的“name”,但是值现在显示正确了…就是这个未定义的常量错误检查注意到的代码,然后使用我添加的最新代码进行了更新