php - 在 PHP 中显示选择结果

标签 php mysql select

我运行一个查询,仅从特定字段返回第一个单词,该字段有多个由空格分隔的单词。查询的结果将是我动态创建的选择框的值。我有 3 个选择框,它们是根据另一个选择框动态创建的。

问题是查询返回整个句子,并且也显示在选择框中。我尝试仅在数据库中运行查询,它似乎给出了正确的结果。

这是代码片段。我该如何解决它?

<?php
  //**************************************
 //     First selection results     //
//**************************************
if(isset($_GET['func'])&& $_GET['func'] == "drop_1") {
   drop_1($_GET['drop_var']); 
}

function drop_1($drop_var)
{
$result = mysql_query("SELECT DISTINCT SUBSTRING_INDEX(`h_name` ,' ', 1 ) AS name FROM hypermarket_em") or die(mysql_error());
echo '<select name="drop_2" id="drop_2"><option value=" " disabled="disabled" selected="selected">Select City</option>
        <option value="ALL" >ALL</option>';
while($drop_2 = mysql_fetch_array( $result )) 
{
      echo '<option value="'.$drop_2['name'].'">'.$drop_2['name'].'</option>';
}
echo '</select>';
echo "<script type=\"text/javascript\">
    $('#wait_2').hide();
    $('#drop_2').change(function(){
    $(this).parent().parent().find('.drop2').val($(this).val());
    $('#wait_2').show();
    $('#result_2').hide();
    $.get(\"func.php\", {
    func: \"drop_2\",
    drop_var: $('#drop_2').val()
    }, function(response){
    $('#result_2').fadeOut();
    setTimeout(\"finishAjax_tier_three('result_2', '\"+escape(response)+\"')\", 400);
    });
    return false;
    });
    </script>";
}
?>

非常感谢任何想法。谢谢。

最佳答案

您正在设置子字符串

SUBSTRING_INDEX(`h_name` ,' ', 1 ) AS name

但仍引用完整的原始字符串$drop_2['h_name']。尝试更改为 -

while($drop_2 = mysql_fetch_array( $result )) 
{
  echo '<option value="'.$drop_2['name'].'">'.$drop_2['name'].'</option>';
}

编辑--

如果您在 $drop_2['name'] 中正确使用别名 name,我不确定为什么它仍然回显完整字符串。您可以使用我首先回答的 explode() 作为故障安全措施

while($drop_2 = mysql_fetch_array( $result )) 
{
  $firstWord = explode(' ',trim($drop_2['name']));
  echo '<option value="'.$firstWord[0].'">'.$firstWord[0].'</option>';
}

关于php - 在 PHP 中显示选择结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13506340/

相关文章:

javascript - 安装后 Moodle 3.7 无法正确加载

javascript - jQuery 仅每 x 秒运行一次 AJAX

php - 如果访问日期是<今天的日期,则更新 "status"单元格php mysql

mysql - mysql select 中的小计和总计不正确

php - getenv(ENVIRONMENT VARIABLE) 什么也没得到

php - PHP比较和填充不同长度的数组

java - 如何从jsp到jsp发送和接收多个单选按钮值

mysql - 为什么部署环境中的 Model.find 行为与开发环境中的不同?

html - 从 HTML <li> 表单发送值

python - Bokeh Python : Select dropdown is updating ColumnDataSource but not updating the graph