PHP-发布表单后未定义的索引

PHP-发布表单后未定义的索引,php,forms,post,indexing,undefined,Php,Forms,Post,Indexing,Undefined,我已经编写了以下表单代码: HTML <form method="post" action="cible.php"> <p>Prénom</p> <!-- ZONE DE TEXTE --> <input type="text" name="prenom" /> <input type="submit" value="Valider" /> <br /> <p>Message</p>

我已经编写了以下表单代码:

HTML

<form method="post" action="cible.php">

<p>Prénom</p> <!-- ZONE DE TEXTE -->
<input type="text" name="prenom" />
<input type="submit" value="Valider" />
<br />

<p>Message</p> <!-- ZONE DE TEXTE MULTILIGNES -->
<textarea name="message" rows="8" cols="45">Votre message ici.</textarea>
<br />

<p>Pays</p> <!-- LISTE DEROULANTE -->
<select name="pays">
  <option value="Suisse" selected="selected">Suisse</option>
  <option value="France">France</option>
  <option value="Allemagne">Allemagne</option>
  <option value="Angleterre">Angleterre</option>
  <option value="Italie">Italie</option>
</select>
<br />

<p>Plateforme</p> <!-- CASE A COCHER -->
<input type="checkbox" name="case" value="acer" id="case" /> <label for="case">Acer</label>
<input type="checkbox" name="case" value="asus" id="case" /> <label for="case">Asus</label>
<br />

<p>Sexe</p> <!-- BOUTON RADIO -->
<input type="radio" name="sexe" value="Homme" id="m" checked="checked" /> <label for="Homme">Masculin</label>
<input type="radio" name="sexe" value="Femme" id="f" /> <label for="Femme">Féminin</label>

</form>

名称


消息

Votre消息ici。
支付

瑞士 法国 阿勒曼 安格尔特雷 意大利
平台

宏碁 华硕
性别

阳刚的 费米宁
PHP

<?php

echo $_POST["prenom"] . "<br />";
echo $_POST["message"] . "<br />";
echo $_POST["pays"] . "<br />";

if ($_POST["case"] == "acer")
{
    echo $_POST["case"] . "<br />";
}
else if ($_POST["case"] == "asus")
{
    echo $_POST["case"] . "<br />";
}
else
{
    echo "Pas de plateforme";
}

echo $_POST["sexe"] . "<br />";

?>

PHP代码意味着:

如果访客选择“宏碁”,请写下他的选择。如果访客选择 “华硕”,写下他的选择。否则,写下:“平台”

但当我“张贴”表格时,它告诉我:

未定义索引:以

有人能帮我修一下吗

多谢各位。
Chris。

使用复选框意味着“case”将返回一个数组,因此您需要查看case['asus']是否已设置且值是否等于1。

在操作文件中尝试以下代码:

<?php

echo $_POST["prenom"] . "<br />";
echo $_POST["message"] . "<br />";
echo $_POST["pays"] . "<br />";

if (!empty($_POST["case"])) {
    if ($_POST["case"] == "acer") {
        echo $_POST["case"] . "<br />";
    } else if ($_POST["case"] == "asus") {
        echo $_POST["case"] . "<br />";
    }
} else {
    echo "Pas de plateforme" . "<br />";
}

echo $_POST["sexe"] . "<br />";
?>


如果您告诉使用php检测到错误的行(而不是数字,例如行的开头)第7行和第11行(在php代码中)。这是您的完整php代码吗?第7行和第11行(在php代码中)。对
$\u POST
执行
var\u dump
并查看是否定义了
case
。然后php将引发另一个异常。