Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

237
Visualizações
use la casilla de verificación con ajax para actualizar la base de datos

Entonces, trato de actualizar los campos en mi base de datos (id [int], status [boolean]) usando una casilla de verificación con Ajax. Esto debe hacerse sin actualizar la página y sin usar un botón de envío. He probado varios tutoriales y ninguno parece funcionar para mí. Para nombrar algunos: Ajax actualizando la base de datos cuando se marca una casilla de verificación , casilla de verificación al cambiar la llamada ajax , actualizar la base de datos con la casilla de verificación

Por favor, realmente necesito ayuda con esto, he estado en esto durante días. Este es mi intento de hacerlo:

índice.html

 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script type="text/javascript" src="https://code.jquery.com/jquery-3.4.1.min.js"></script> <script src="jquery.min.js"></script> </head> <body> <input type="checkbox" name="action1" id="action1" title="Action 1" value="1"/> <script type="text/javascript"> $("#action1").change(function () { var value = $(this).val(); $.ajax({ type: "POST", url: "update.php", async: true, data: { action1: value // as you are getting in php $_POST['action1'] }, success: function (msg) { alert('Success'); if (msg != 'success') { alert('Fail'); } } }); }); </script> </body> </html>

actualizar.php

 <?php $servername = "localhost"; $username = "root"; $password = ""; $database = "api"; // Create connection $conn = new mysqli($servername, $username, $password, $database); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } //echo "Connected successfully"; if($_POST['action1']==1){ //as used variable name "value" in ajax post data $sql = "UPDATE toggle SET status = '1' WHERE id = '1'"; //query was incomplete and missing ";" echo 'success'; } else{ $sql = "UPDATE toggle SET status = '0' WHERE id = '1'"; // missing ";" echo 'success'; } $result=$conn->query($sql); ?>
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Su archivo de actualización devuelve "éxito" sin importar qué datos se le envíen. Pruébalo de esta manera:

índice.html

 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script> </head> <body> <input type="checkbox" name="action1" id="action1" title="Action 1" value="2"/>Action <script type="text/javascript"> $("#action1").change(function () { var value = $(this).val(); $.ajax({ type: "POST", url: "update.php", async: true, data: { action1: value // as you are getting in php $_POST['action1'] }, success: function (msg) { alert(msg); } }); }); </script> </body>

actualizar.php

 <?php $servername = "localhost"; $username = "root"; $password = ""; $database = "stackoverflow"; // Create connection $conn = new mysqli($servername, $username, $password, $database); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } if($_POST['action1']==1){ $sql = "UPDATE toggle SET status = '1' WHERE id = '1'"; echo 'success'; } else{ $sql = "UPDATE toggle SET status = '0' WHERE id = '1'"; echo 'fail'; } $result=$conn->query($sql); ?>
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda