PHP新手,如何在新页面上发送数据?

时间:2013-06-03 16:22:06

标签: php get

我正在学习PHP,我需要帮助才能在另一页上“发送”信息。 我读了一个文本文件,并将数据放在2个数组上:

    $nomVille;
    $nomFichier;

    $index; // index is use for arrays

现在我想构建一个下拉列表和一个提交按钮。

下拉列表:显示$ nomVille

上的所有项目

按钮:打开“villes.php”

villes.php必须检索$ nomFichier和$ index,但我无法做到。

以下是我的代码的一部分:

      echo 'Make your choice : ';
      echo "<select name='ville'>";
      foreach($nomVille as $option){
          echo "<option value='{$option}'>{$option}</option>";   
      }
      echo "</select>";
      echo '<FORM METHOD="post" ACTION="villes.php">';
      echo '<INPUT TYPE="submit" VALUE="Display">';
      echo '</FORM>';

这是对的吗?

2 个答案:

答案 0 :(得分:2)

你没有将你的select元素包装在表单标签中,这会阻止它被发送。你真正想要的是这个:

echo '<FORM METHOD="post" ACTION="villes.php">';
echo 'Make your choice : ';
echo "<select name='ville'>";
foreach($nomVille as $option){
    echo "<option value='{$option}'>{$option}</option>";   
}
echo "</select>";
echo '<INPUT TYPE="submit" VALUE="Display">';
echo '</FORM>';

在“villes.php”页面上,您应该能够引用变量$ _POST [“ville”],它将包含选择中的所选选项。

echo $_POST["ville"];

为了传输$ nomFichier和$ index的值,您希望将它们作为隐藏元素发送为表单的一部分,因此添加以下行:

echo "<input type='hidden' name='nomFichier' value='".$nomFichier."'>";
echo "<input type='hidden' name='index' value='".$index."'>";

再次,可以从$ _POST数组中获取。

答案 1 :(得分:1)

将您的选择移动到FORM元素将允许应用程序在提交时发布数据。

echo 'Make your choice : ';
echo '<FORM METHOD="post" ACTION="villes.php">';
echo "<select name='ville'>";
foreach($nomVille as $option){
    echo "<option value='{$option}'>{$option}</option>";   
}
echo "</select>";
echo '<INPUT TYPE="submit" VALUE="Display">';
echo '</FORM>';

villes.php页面中,您可以在可以访问的数据中检索数据,如下所示:

if (isset($_POST['ville'])) {
  $someVar = $_POST['ville'];
}

您会发现值得花时间参与Google“PHP表单教程”并了解其中的工作原理。