OnClick отправить значение вставки переключателя в базу данных

0

Значение радиокнопки не вставляется в базу данных. Я использую 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();
}
?>
  • 0
    var gender = $(this).val(); this есть ваша кнопка отправить, а не радио.
  • 0
    var gender = $(this).val(); это неверно. Кнопка отправки не имеет значения пола. Попробуй var gender = $("[name=gender]:checked").val() || "not given"; - также сделайте кнопку type="button" - проголосуйте, чтобы закрыть вопрос типа опечатки
Теги:
pdo

1 ответ

-2
Лучший ответ
<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>
  • 0
    Спасибо, это работает !!
  • 0
    Да и уже был опубликован в качестве комментария - пожалуйста, не конвертируйте комментарии в ответы. Создайте свой собственный. var gender = $("[name=gender]:checked").val() || "not given"; был размещен за 5 минут до вашего ответа. Это действительно слишком похоже

Ещё вопросы

Сообщество Overcoder
Наверх
Меню