Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.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_Html_Mysql - Fatal编程技术网

Php 选项值是否未显示在下拉菜单中?

Php 选项值是否未显示在下拉菜单中?,php,html,mysql,Php,Html,Mysql,我在网页上使用一个日期范围来聚合MySQL数据,并根据所选的时间框架显示数据。由于某些原因,下拉菜单中每个选项的值都不会显示。以下是我正在使用的PHP: <select name="date1" title="<?=$date1 ?>"> <?php foreach($availableDates as $date) { ?> <option value="<?=$date ?>"<?php if($date == $date1) {

我在网页上使用一个日期范围来聚合MySQL数据,并根据所选的时间框架显示数据。由于某些原因,下拉菜单中每个选项的值都不会显示。以下是我正在使用的PHP:

<select name="date1" title="<?=$date1 ?>">
<?php foreach($availableDates as $date) { ?>
<option value="<?=$date ?>"<?php if($date == $date1) { ?> selected="selected"<?php } ?><?=$date ?></option>
<?php } ?>
</select>

发生这种情况是因为您缺少标记的结尾

修改代码:

<select name="date1" title="<?=$date1 ?>">
<?php foreach($availableDates as $date) { ?>
<option value="<?=$date ?>"<?php if($date == $date1) { ?> selected="selected"<?php } ?>>
<?=$date ?>
</option>
<?php } ?>
</select>
<select name="per1" id="per1">
  <option selected="selected">Choose one</option>
  <?php
    foreach($names as $name) { ?>
      <option value="<?= $name['name'] ?>"><?= $name['name'] ?></option>
  <?php
    } ?>
</select> 

发生这种情况是因为您缺少标记的结尾

修改代码:

<select name="date1" title="<?=$date1 ?>">
<?php foreach($availableDates as $date) { ?>
<option value="<?=$date ?>"<?php if($date == $date1) { ?> selected="selected"<?php } ?>>
<?=$date ?>
</option>
<?php } ?>
</select>
<select name="per1" id="per1">
  <option selected="selected">Choose one</option>
  <?php
    foreach($names as $name) { ?>
      <option value="<?= $name['name'] ?>"><?= $name['name'] ?></option>
  <?php
    } ?>
</select> 

您的PHP代码段缺少结束语

<select name="date1" title="<?=$date1 ?>">
  <?php foreach($availableDates as $date) { ?>
  <option 
    value="<?=$date ?>"
    <?php if($date == $date1) { ?> selected="selected"<?php } ?>
  >
    <?=$date ?>
  </option>
  <?php } ?>
</select>

您的PHP代码段缺少结束语

<select name="date1" title="<?=$date1 ?>">
  <?php foreach($availableDates as $date) { ?>
  <option 
    value="<?=$date ?>"
    <?php if($date == $date1) { ?> selected="selected"<?php } ?>
  >
    <?=$date ?>
  </option>
  <?php } ?>
</select>

也可以尝试这种方式:

<select name="date1" title="<?=$date1 ?>">
<?php foreach($availableDates as $date) { ?>
<option value="<?=$date ?>"<?php if($date == $date1) { ?> selected="selected"<?php } ?>>
<?=$date ?>
</option>
<?php } ?>
</select>
<select name="per1" id="per1">
  <option selected="selected">Choose one</option>
  <?php
    foreach($names as $name) { ?>
      <option value="<?= $name['name'] ?>"><?= $name['name'] ?></option>
  <?php
    } ?>
</select> 

选一个

现在您可以将代码放在这里。

也可以尝试这种方式:

<select name="date1" title="<?=$date1 ?>">
<?php foreach($availableDates as $date) { ?>
<option value="<?=$date ?>"<?php if($date == $date1) { ?> selected="selected"<?php } ?>>
<?=$date ?>
</option>
<?php } ?>
</select>
<select name="per1" id="per1">
  <option selected="selected">Choose one</option>
  <?php
    foreach($names as $name) { ?>
      <option value="<?= $name['name'] ?>"><?= $name['name'] ?></option>
  <?php
    } ?>
</select> 

选一个

现在,您可以将代码放在此处。

1。添加
在选定属性后标记closer
2.删除在您同时使用


1.添加
在选定属性后标记closer
2.删除在您同时使用


我建议使用这种不太容易出错的代码

$selHTML = '<select name="date1" title="'.$date1.'">';
foreach($availableDates as $date) { 
  $sel = ($date == $date1)?" selected":"";
  $selHTML .= '<option value="'.$date.'"'.$sel.'>'.$date.'</option>';
}
$selHTML .= '</select>';
echo $selHTML;
$selHTML='';
foreach($日期可用){
$sel=($date==$date1)?“选定”:“;
$selHTML.=''.$date';
}
$selHTML.='';
echo$selHTML;

我建议使用这种不太容易出错的代码

$selHTML = '<select name="date1" title="'.$date1.'">';
foreach($availableDates as $date) { 
  $sel = ($date == $date1)?" selected":"";
  $selHTML .= '<option value="'.$date.'"'.$sel.'>'.$date.'</option>';
}
$selHTML .= '</select>';
echo $selHTML;
$selHTML='';
foreach($日期可用){
$sel=($date==$date1)?“选定”:“;
$selHTML.=''.$date';
}
$selHTML.='';
echo$selHTML;

您是否看到关闭
选项开始标记。如果您要摆脱糟糕的速记方法,这一点会更加明显。以一种合适的方式格式化你的代码,你会更快地发现像这样的错误。这是继承的代码,但无论如何我都应该抓住它。谢谢你的帮助!您是否看到关闭
>
选项开始标记。如果您要摆脱糟糕的速记方法,这将更加明显。以一种合适的方式格式化你的代码,你会更快地发现像这样的错误。这是继承的代码,但无论如何我都应该抓住它。谢谢你的帮助!不,我的朋友,如果date==date1,那么将选择此特定选项。。。你错过了然后在它里面放一个条件,不,我的朋友,如果date==date1,那么这个特定的选项将被选中。。。你错过了然后在里面放一个条件