如何从php获取选定的单选按钮值

时间:2013-08-20 07:38:42

标签: php javascript html ajax

我想在php中获取所选单选按钮的值。

代码: update.php

<html>
    <head>
        <link rel="stylesheet" href="css/common.css" type="text/css">
        <link rel="stylesheet" type="text/css" href="css/page.css">
        <link href="css/loginmodule.css" rel="stylesheet" type="text/css" />

        <script>
            function showUser(str) {
                if (str == "") {
                    document.getElementById("txtHint").innerHTML = "";
                    return;
                }

                if (window.XMLHttpRequest) {
                    xmlhttp = new XMLHttpRequest();
                } else {
                    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                }

                xmlhttp.onreadystatechange = function () {
                    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                        document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
                    }
                }
                xmlhttp.open("GET", "gettheater.php?q=" + str, true);
                xmlhttp.send();
            }



        </script>       





    </head>
    <body>

        <h1>Welcome <?php echo $_SESSION['SESS_FIRST_NAME']; ?></h1>
        <a href="member-profile.php" class="log">My Profile</a> | <a href="logout.php" class="log">Logout</a>
        <p>This is a password protected area only accessible to Admins. </p>

    <center>
        <div class="pan"><br><br>
            <div class="head">Remove Theater From List</div>
            <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" >


                <table>
                    <tr>
                        <td>
                            <table>
                                <tr>
                                    <td><label for="Theatername">Theater Name</label></td>
                                    <td>
                                        <?php
                                        try {
                                            $dbh = new PDO('mysql:dbname=theaterdb;host=localhost', 'tiger', 'tiger');
                                        } catch (PDOException $e) {
                                            echo 'Connection failed: ' . $e->getMessage();
                                        }

                                        $sql = "SELECT theater_name FROM theater;";

                                        $sth = $dbh->prepare($sql);
                                        $sth->execute();

                                        echo "<select name='theater_name' id='course' onchange='showUser(this.value);'>";
                                        echo "<option>----Select Theater----</option>";
                                        while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {
                                            echo "<option value='" . $row['theater_name'] . "'>" . $row['theater_name'] . "</option>";
                                        }
                                        echo "</select>";
                                        ?>
                                    </td>
                                </tr>
                            </table>
                        </td>
                    </tr> 
            </form>


            <tr>
                <td>
                    <form method="POST">
                        <table>
                            <tr>
                                <td><label for="Address">Address</label></td>
                                <td><div id="txtHint">
                                    </div></td>
                            </tr>


                            <tr>
                                <td></td>
                                <td><input type="submit" name='Remove From List' value="Remove From List" class="getvalue" onclick="< ? php myfunc() ? >"/></td>
                            </tr>
                        </table>

                        </table> 
                    </form>
                    <br><br>
            </tr>
            </td>
            <?php
            if (isset($_POST['Submit'])) {
                echo $_POST['address'];
            }
            ?>
        </div>
    </center>
</body>
</html>

代码
gettheater.php

<?php
$q = strtolower(trim($_GET["q"]));

try {
    $dbh = new PDO('mysql:dbname=theaterdb;host=localhost', 'tiger', 'tiger');
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

$sql = 'SELECT address FROM theater WHERE LOWER(theater_name) = :q';

$sth = $dbh->prepare($sql);
$sth->bindValue(':q', $q);
$sth->execute();

echo "<form name='theater' method='POST' action='update.php'>";
echo "<table border='0' class='tabs'><tr><th>Theater Address</th><th>Select</th></tr>";

while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {
    echo "<tr>";
    echo "<td class='ad'>" . $row['address'] . "</td>";
    echo "<td>";
    echo '<input type="radio" name="address" value="43"  />';
    echo "</td>";
    echo "</tr>";
}

echo "</table>";
echo "</form>";
$dbh = null;
?>

单选按钮的html位于gettheater.php页面。但我正在运行update.php gettheater页面在update.php中打开,但如何获取所选的单选按钮值,我想在update.php中获取所选的单选按钮值。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

检查表单是否已提交,如果已提交,则使用$_POST[]访问数据。

请参阅http://php.net/manual/en/reserved.variables.post.php

您可能想要添加一个提交按钮,这样您就可以检查表单是否已经提交。

echo "<form name='theater' method='POST' action='update.php'>";
echo '<input type="submit" value="Enter" name="submit">';

检查

if (isset($_POST['submit'])) {
    //Do something
}

这通常会起作用,如果没有,则尝试使用隐藏字段。