【问题标题】:Adding radio button values to MYSQL table using PHP使用 PHP 将单选按钮值添加到 MYSQL 表
【发布时间】:2013-03-29 22:26:16
【问题描述】:

我正在使用 PHP/MYSQL 创建一个包含单选按钮的表单。我正在尝试将选中的单选按钮的值添加到数据库中的表中。目前我无法将任何内容添加到数据库中。该表称为评估。

QUESTION1.PHP

<?php 
include 'core/init.php';
include 'includes/overall/overall_header.php';
protect_page();
include 'includes/menu.php';
include 'includes/overall/navigate.php';
include 'includes/widgets/loggedin.php';

?>      

<h1>Assessment</h1>

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

<p class="p1">
Question 1</p>
<p class="p4">
Are you tall or short?</p>

<p class="p3"> 
<input type="radio" name="q1" value="1" />
1
<input type="radio" name="q1" value="2" />
2
<input type="radio" name="q1" value="3" />
3
<input type="radio" name="q1" value="4" />
4
<input type="radio" name="q1" value="5" />
5
</p><br><br>
</form>

<img src="Images/image1.png" alt="Submit" class="thumbnail" align="right" width="58"      height="52" id="question2">
<img src="Images/save.png" alt="Submit" class="thumbnail" align="right" width="65" height="52">

<?php
}
 include 'includes/overall/overall_footer.php'; 
 ?>  

SAVE.PHP

<?php
session_start();
include('connection.php');
$q1=$_POST['q1'];
mysql_query("INSERT INTO `assessment` (q1) VALUES ('$q1')");
header("location: question2.php?");
mysql_close($con);
?>

【问题讨论】:

  • 我假设您检查了 save.php 页面中$_POST-变量的内容?接下来,尝试通过将$q1 替换为适当的值,在数据库中手动执行查询。如果这样可行,则您的数据库连接可能有问题。
  • 欢迎来到 Stack Overflow! Please, don't use mysql_* functions 在新代码中。它们不再被维护并且是officially deprecated。看到红框了吗?改为了解准备好的语句,并使用pdomysqli
  • save.php 上$_POST['q1'] 的内容是什么。你有任何错误吗?
  • 经过一番折腾之后,我现在已经从表单中获得了要添加到表中的值。现在我有另一个问题,我试图在每一页上做一个不同问题的问卷,但是每次我选择一个单选按钮并进入下一页时,单选按钮都会添加到新行而不是同一行,但是下一栏:/

标签: php mysql radio-button


【解决方案1】:

我只是按照您的代码并提供解决方案。您只需在 save.php 中进行一些更改,如下所示:

<?php

if (isset($_POST['q1'])) {
    $q1 = $_POST['q1'];
    $sql = mysql_query("INSERT INTO assessment (q1) VALUES ('$q1')") or die("MySQL Error : ".mysql_error($conn));
    if ($sql) {
        echo "Data Saved";
    } else {
        echo "Data not saved";
    }
}

如果发现任何问题,请告诉我。

重要提示:请避免在 PHP 5.5.0 及更高版本中弃用的 mysql_* 类函数。

【讨论】:

    【解决方案2】:
    if (isset($_POST['q1'])) {
        $q1 = $_POST['q1'];
        $stmt = $db->prepare("INSERT INTO members (q1) VALUES (:q1)");
    
        $stmt->execute(array(':q1' => $_POST['q1']));
    }
    

    【讨论】:

      【解决方案3】:

      有一个性别单选按钮可以选择男性和女性

      <?php
      $gender=$_POST['radiobutton_name'];
      $sql="INSERT INTO table_name(column_name)
      VALUES('$gender')";
      ?>
      

      【讨论】:

        【解决方案4】:

        我想知道,这两个图像 TAG 的目的是什么。我只是将那些 img 标签更改为按钮图像。

        <h1>Assessment</h1>
        <form action="save.php" method="post">
          <p class="p1"> Question 1</p>
          <p class="p4"> Are you tall or short?</p>
          <p class="p3">
            <input type="radio" name="q1" value="1" />
            1
            <input type="radio" name="q1" value="2" />
            2
            <input type="radio" name="q1" value="3" />
            3
            <input type="radio" name="q1" value="4" />
            4
            <input type="radio" name="q1" value="5" />
            5 </p>
          <br>
          <br>
          <input type="image" src="Images/image1.png" />
          <input type="image" src="Images/save.png" />
        </form>
        

        save.php

         <?php
            if (isset($_POST['q1'])){
                $q1 = $_POST['q1'];
                mysql_query("INSERT INTO assessment (q1) VALUES ('$q1')");
            }
            ?>
        

        【讨论】:

          猜你喜欢
          • 2012-12-13
          • 2011-09-13
          • 1970-01-01
          • 2017-08-04
          • 2020-09-02
          • 2016-12-28
          • 2013-11-18
          • 2013-08-09
          • 1970-01-01
          相关资源
          最近更新 更多