坚持使用简单的PHP代码

时间:2013-06-14 17:19:53

标签: php

我根本没有使用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>

2 个答案:

答案 0 :(得分: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中{p>执行echo $_POST["dbtype"];,看看你是否得到了正确的结果。 将page.php更改为您要将表单提交到的页面的名称。

答案 1 :(得分: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属性,该操作将成为当前页面。