php $ _POST选择选项值不工作未定义索引错误

时间:2017-03-02 07:22:38

标签: php mysql post

<?php
    $dbhost = 'localhost';
    $dbuser = 'root';
    $dbpass = '';

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to 
mysql');
$dbname = 'vendordb';
mysql_select_db($dbname);
?>
<html>
<div class="row">
    <form id="form1" name="form1" action="<?php $_SERVER['PHP_SELF'];?>" 
        method="post">
        <?php   
            $result=mysql_query("select crtname from crtinfo");

            echo "<select id='criteria1' name='criteria1'" . ">";

            while($row = mysql_fetch_array($result))
            {
                echo "<option value=".$row[0]. ">". $row[0]. "</option>";
            }
            echo "</select>";

            $crt1=$_POST['criteria1'];
            echo $crt1;  
        ?>
    </form>
</div>

无法在$ _POST中获取下拉值

错误:

注意:未定义的索引:第25行的C:\ xampp \ htdocs \ website \ dropdowntest.php中的criteria1 无法从$ _POST获得价值

3 个答案:

答案 0 :(得分:0)

试试这个:

<?php
    $dbhost = 'localhost';
    $dbuser = 'root';
    $dbpass = '';

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to 
mysql');
$dbname = 'vendordb';
mysql_select_db($dbname);
?>
<html>
<div class="row">
    <form id="form1" name="form1" action="<?php $_SERVER['PHP_SELF'];?>" 
        method="post">
        <?php   
            $result=mysql_query("select crtname from crtinfo");

            echo "<select id='criteria1' name='criteria1'>";

            while($row = mysql_fetch_assoc($result))
            {
                echo "<option value=".$row['crtname']. ">". $row['crtname']. "</option>";
            }
            echo "</select>";


        ?>
        <input type="submit" name="submit" value="submit">
    </form>
    <?php
        if(isset($_POST['criteria1'])){
            echo $_POST['criteria1'];
        }
    ?>
</div>

答案 1 :(得分:0)

虽然我不确定这是否会解决问题,但这是一个关于如何使用isset()

防止出现“未定义索引”错误的示例
if(isset($_POST["critera"])
{
    $crt1=$_POST['criteria1'];
    echo $crt1;
}

答案 2 :(得分:0)

您无法获得帖子价值。试试这个:

&#13;
&#13;
<?php
    $dbhost = 'localhost';
    $dbuser = 'root';
    $dbpass = '';

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to 
mysql');
$dbname = 'vendordb';
mysql_select_db($dbname);
?>
<html>
<div class="row">
    <form id="form1" name="form1" action="<?php $_SERVER['PHP_SELF'];?>" 
        method="post">
        <?php   
            $result=mysql_query("select crtname from crtinfo");

            echo "<select id=criteria1 name=criteria1" . ">";

            while($row = mysql_fetch_array($result))
            {
                echo "<option value=".$row[0]. ">". $row[0]. "</option>";
            }
            echo "</select>";
            
        ?>
         <input type="submit" value="submit">
    </form>
  <?php
        if(isset($_POST['criteria1'])){
            echo $_POST['criteria1'];
        }
    ?>
?>
</div>
&#13;
&#13;
&#13;