php:选择框问题

时间:2013-08-02 05:25:09

标签: php html

test5.php

<form action="test4.php" method="post">
Please input one package:(Goa, Kashmir, Rajasthan):<input type="text" name="package">
<input type="submit" value="submit">
<form>

test4.php

<label>Select Tour Package<span class="note">*</span>:</label>    
   <select name="package">  
    <option value="Goa" <?php ($_POST['package'] == "Goa")? "selected":"";?>>Goa</options>  
    <option value="Kashmir" <?php ($_POST['package'] == "Kashmir")? "selected":"";?>>Kashmir</options>  
    <option value="Rajasthan" <?php  ($_POST['package'] == "Rajasthan")? "selected":"";?>>Rajasthan</options>  
   </select> 

我希望有这样的功能:当有人在test5.php上输入一个包时,将在test4.php的选择框中选择/选择相同的包,但似乎不起作用,那么上面的脚本有什么问题?

6 个答案:

答案 0 :(得分:1)

我认为它就像echo

一样简单

答案 1 :(得分:1)

您希望echo输出值如下:

<option value="Goa" <?php echo ($_POST['package'] == "Goa")? "selected":"";?>>Goa</options>

答案 2 :(得分:1)

你忘记了echo

<option value="Goa" <?php echo ($_POST['package'] == "Goa") ? "selected" : "" ?>>Goa</options>

对于更简单的表示法,您可以使用<?=,这将打印出<?= ?>

中任何表达式的结果
    <option value="Goa" <?= ($_POST['package'] == "Goa") ? "selected" : "" ?>>Goa</options>

答案 3 :(得分:1)

你需要做两件事......

  1. 在开发过程中启用错误报告。

    ini_set('display_errors', 'On');
    error_reporting(E_ALL);
    
  2. Echo 已选择

    <?= isset($_POST['package']) && $_POST['package'] == 'Goa' ? 'selected' : '' ?>
    

答案 4 :(得分:1)

在每个选项中添加echo

<?php echo ($_POST['package'] == "Goa")? "selected":"";?>

答案 5 :(得分:1)

还可以尝试使用 trim($ _ POST ['package'])来删除空格

<select name="package">  
        <option value="Goa" <?php if($_POST['package'] == "Goa") echo 'selected="selected"';?>>Goa</options>  
        <option value="Kashmir" <?php if($_POST['package'] == "Kashmir") echo 'selected="selected"';?>>Kashmir</options>  
        <option value="Rajasthan" <?php  if($_POST['package'] == "Rajasthan") echo 'selected="selected"';?>>Rajasthan</options>  
       </select>