1

我根本没有使用 php 的经验。一些 html,一些 javascript,但就是这样。

我想要做的就是有一个数据库连接的下拉列表,然后基于该连接选择的数据库。很简单,但我似乎无法获得选择选项值。我已经陷入了一个巨大的老鼠洞试图弄清楚这一点。一切都指向 isset($_POST['somevariable']) 以获取值,但我认为我缺少一些关键。我是否需要使用表单标签或其他东西。无论我做什么,我都无法理解变量。另外,我可以在一个 php 脚本中完成这一切吗?其他帖子有多个 php 脚本。我最终添加了一个提交按钮,看看是不是这样......我只是空了......我错过了一些非常愚蠢的东西......

这是我的代码:

<html>
<head>
<title>Liferay Utilities</title>
<style>
    .label {
        font-weight: bold;
        margin: 10px 20px 10px 0;
        float: left;
        clear: left;
        width: 200px;
    }

    .element {
        margin: 10px 0;
        width: 150px;
        float: left;
    }
</style>
</head>
<body>
    <h1>Liferay Utilities</h1>


    <hr style="border-bottom: #cac917 5px solid;" />

    <p class="label">Choose Database:</p>


<select name="dbtype">
  <option value="default">Select Database</option>
  <option value="suntest">SUNTEST</option>
  <option value="sundevo">SUNDEVO</option>
</select>
<input type="submit" name="submit" value="Next">
</p>

    <?php

//just debugging
    echo 'xx';
    echo  isset($_POST['submit']);
  echo 'xx';
if (isset($_POST['dbtype']))
{

       // I NEVER EVER GET IN HERE
       echo 'in here';


} 

?>
</body>
</html>

任何帮助将不胜感激。

这是我的新代码:现在可以使用了!!!谢谢你们!希望我在一小时前发布...如果有任何好的网站有完整的示例和真实世界的网站,请告诉我。

<html>
<head>
<title>Liferay Utilities</title>
<style>
    .label {
        font-weight: bold;
        margin: 10px 20px 10px 0;
        float: left;
        clear: left;
        width: 200px;
    }

    .element {
        margin: 10px 0;
        width: 150px;
        float: left;
    }
</style>
</head>
<body>
    <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

    <h1>Liferay Utilities</h1>


    <hr style="border-bottom: #cac917 5px solid;" />

    <p class="label">Choose Database:</p>

<select name="dbtype">
  <option value="default">Select Database</option>
  <option value="suntest">SUNTEST</option>
  <option value="sundevo">SUNDEVO</option>
</select>
<input type="submit" name="submit" value="Next">
</p>
    <?php
    echo $_SERVER['PHP_SELF'];
//just debugging
    echo 'xx';
    echo  isset($_POST['submit']);
  echo 'xx';
if (isset($_POST['dbtype']))
{

       // I NEVER EVER GET IN HERE
       echo 'in here';


} 

?>
</form>

</body>
</html>
4

2 回答 2

1

尝试:

<form action="page.php" method="post">
<select name="dbtype">
  <option value="default">Select Database</option>
  <option value="suntest">SUNTEST</option>
  <option value="sundevo">SUNDEVO</option>
</select>
<input type="submit" name="submit" value="Next">
</form>

在你的 php 中做echo $_POST["dbtype"];看看你是否得到正确的结果。将 page.php 更改为您要提交表单的页面的名称。

于 2013-06-14T17:23:37.830 回答
0

你没有定义method. 至少您必须拥有它才能使用$_POST. 为此,您必须将输入/选择包装在form

<form method="post">
<select name="dbtype">
  <option value="default">Select Database</option>
  <option value="suntest">SUNTEST</option>
  <option value="sundevo">SUNDEVO</option>
</select>
<input type="submit" name="submit" value="Next">
</form>

注意:不给出action属性,动作将成为当前页面。

于 2013-06-14T17:23:45.233 回答