OnClick提交将单选按钮值插入数据库

时间:2018-04-09 13:37:00

标签: php html mysql pdo

单选按钮的值不会插入数据库中。我正在使用PHP PDO,Jquery和Ajax

$(document).ready(function() {
  $('input[type="submit"]').click(function() {
    var gender = $(this).val();
    $.ajax({
      url: "insert.php",
      method: "POST",
      data: {
        gender: gender
      },
      success: function(data) {
        $('#result').html(data);
      }
    });
  });
});
<title>OnClick Insert Radio Button value into Database using PDO in Jquery Ajax PHP | SoftAOX Tutorial</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<h1> On Click Insert Radio Button Value into Database</h1>
<input type="radio" name="gender" value="Male">Male<br/><br/>
<input type="radio" name="gender" value="Female">Female<br/><br/>
<input type="radio" name="gender" value="Others">Others<br/>
<input type="submit"><br/>
<h3 id="result"></h3>
<br/>
<?php
//Insert Data
$hostname     = "localhost";
$username     = "root";
$password     = "";
$databasename = "tut";
try {
    $conn = new PDO("mysql:host=$hostname;dbname=$databasename", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    if (isset($_POST["gender"])) {
        $query     = "INSERT INTO gender(gender) VALUES (:gender)";
        $statement = $conn->prepare($query);
        $statement->execute(array(
            'gender' => $_POST["gender"]
        ));
        $count = $statement->rowCount();
        if ($count > 0) {
            echo "Data Inserted Successfully..!";
        } else {
            echo "Data Insertion Failed";
        }
    }
}
catch (PDOException $error) {
    echo $error->getMessage();
}
?>

1 个答案:

答案 0 :(得分:-1)

<script type="text/javascript">

$(document).ready(function() {
  $('input[type="submit"]').click(function() {
    var gender = $("[name=gender]:checked").val() || "na";
    $.ajax({
      url: "insert.php",
      method: "POST",
      data: {
        gender: gender
      },
      success: function(data) {
        $('#result').html(data);
      }
    });
  });
});

</script>