0

我想知道如何从动态选择框中检索选定的值。如果我得到选定的值,那么我会将其存储到位于另一个 php 文件中的另一个变量中。这个变量将帮助我在 postgresql 中进行 sql 查询。

//第一个php文件

 <form name="boton_alta_soniador" action="dar_alta_soniador.php" method="POST" autocomplete="off">          
<div class="text-field">
   Nombre de la asociacion
<? $strconn="dbname=postgres port=5432 host=127.0.0.1 user=xxx password=xxx";
     $conn=pg_Connect($strconn);

  $consulta="Select n_asociacion from asociacion";
      $result=pg_query($conn,$consulta);
      while($results [] =pg_fetch_object($result));
      array_pop($results);?>

      <select name="asociacion_seleccion" id="i_clave_asociacion">
           <?php foreach ( $results as $option ) : ?>
           <option value="<?php echo $option->i_clave_asociacion; ?>"><?php echo $option->n_asociacion; ?></option>
            <?php endforeach; ?>
      </select>          
  </div>
</form>

这只是动态选择框。然后我想将选定的值存储在这个变量中:

$ingresaAsociacion       = pg_escape_string($_POST['asociacion_seleccion']);

所以我可以查询以下语句:

$conocerIDasociacion     =  "SELECT N_ASOCIACION FROM ASOCIACION WHERE I_CLAVE_ASOCIACION='$ingresaAsociacion'";

我不想使用 jQuery,因为整个系统几乎完全是用 PHP 和 HTML 制作的。拜托,欢迎任何帮助,我对每个人都感兴趣。

干杯!

4

2 回答 2

1

看起来您缺少提交按钮。

您根本不必使用 AJAX,也不必使用 jQuery。您可以提交您的表单并处理您认为合适的选择值。

选择标签中的选定值将发送到 dar_alta_soniador.php,该文件将使用您编写的确切代码处理该数据:

$_POST['asociacion_seleccion']

因此,您将在 dar_alta_soniador.php 中编写该代码:

$ingresaAsociacion       = pg_escape_string($_POST['asociacion_seleccion']);

然后执行查询。您甚至不必担心在会话变量中发送数据,POST 已经为您完成了。

因此,您的代码中的一切都应该没问题,否则我可能误解了您的问题。您是否有错误消息或出现一些不当行为?

也许提交按钮不见了?我使用这样的代码:

对于选择标签:

<div class="controls">
                                    <select name="list_name">
                                        <option>List</option>
                                        <?php 
                                            foreach ($nucleos as $inner_array) {
                                                $out = "<option>" . $inner_array['name'] . "</option>";

                                                echo $out;
                                            }
                                        ?>

                                    </select>
                                </div>

对于提交按钮:

<div class="control-group">
                                <div class="controls">                                 
                                    <button type="submit" class="btn">Confirm</button>
                                    <br/>                                 
                                </div>
                            </div>

</form>

我在这里使用引导程序来获取样式、HTML 和 CSS。而已。

最好的祝愿,

于 2013-05-15T04:48:36.877 回答
0

我找到了另一个解决方案:

<? $strconn="dbname=postgres port=5432 host=127.0.0.1 user=xxxx password=xxxx";
$conn=pg_Connect($strconn);
$consulta="Select n_asociacion from asociacion";
$result=pg_query($conn,$consulta);?>                     
<select name="asociacion_seleccion" id="i_clave_asociacion">
<?php 
while($row=pg_fetch_assoc($result)) 
{echo "<option>{$row['n_asociacion']}</option>";}?>
</select>       

关键是,每当用户从动态选择框中选择一个选项时,如果我们使用 pg_escape_string($_POST['NAME OF YOUR SELECTION BOX']); 调用该值,则选择框的值是已知的。

感谢大家的配合,我的问题解决了。

于 2013-05-15T22:35:30.800 回答