mzaidan 2 Denunciar post Postado Março 30, 2015 Como que eu faço para quando mudar o select, atualizar um campo no BD. Não to conseguindo passar os valores: <select name="level" class="form-control input-lg" onChange="update()"> <option value="1" <? if($level==1) echo "selected" ?>>Beginner</option> <option value="2" <? if($level==2) echo "selected" ?>>Intermediate</option> <option value="3" <? if($level==3) echo "selected" ?>>Advanced</option> </select> <script> function update(){ O QUE EU FAÇO AQUI? } </script> Grato. Compartilhar este post Link para o post Compartilhar em outros sites
Williams Duarte 431 Denunciar post Postado Março 30, 2015 Melhor é usar Jquery <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.js"></script> <script type="text/javascript"> $(function(){ $('select').change(function(){ // when one changes var te = $('select').val(); // they all change alert(te); }) }) </script> <style type="text/css"> </style> <title>Untitled</title> </head> <body> <select> <option value="111">111</option> <option value="222">222</option> </select> </body> </html> Para fazer a requisição em ajax com o prório jquery, de uma olhada abaixo no tutorialhttp://viniciuswebdev.com/fazendo-requisicoes-com-post-e-get-com-ajax-e-jquery/ Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Março 30, 2015 Amigão, obrigado pelo post. Eu não sei nada de ajax. Li o tutorial que vc postou, mas não entendi muito bem. Seria muito pedir para vc me mostrar como eu faço para passar os parametros? <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.js"></script> <script type="text/javascript"> $(function(){ $('select').change(function(){ // when one changes var te = $('select').val(); // they all change alert(te); }) }) </script> <script> <select name="level" class="form-control input-lg"> <option value="1" <? if($level==1) echo "selected" ?>>Beginner</option> <option value="2" <? if($level==2) echo "selected" ?>>Intermediate</option> <option value="3" <? if($level==3) echo "selected" ?>>Advanced</option> </select> Desse jeito ele ta alertando o value, mas como eu faria para executar uma função para atualizar o banco de dados? Grato. Compartilhar este post Link para o post Compartilhar em outros sites
mzaidan 2 Denunciar post Postado Março 30, 2015 Tentei: <script> function showUser(str) { if (str == "") { document.getElementById("txtHint").innerHTML = ""; return; } else { if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else { // code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById("txtHint").innerHTML = xmlhttp.responseText; } } xmlhttp.open("GET","getlevel.php?q="+str,true); xmlhttp.send(); } } </script> getlevel.php: <!DOCTYPE html> <html> <head> < </head> <body> <?php $ler = $_COOKIE['user']; $q = intval($_GET['q']); $con = mysqli_connect('localhost','admin','senha','db'); if (!$con) { die('Could not connect: ' . mysqli_error($con)); } mysqli_select_db($con,"ajax_demo"); $sql="UPDATE members SET level='$q' WHERE memberID='$ler'"; $result = mysqli_query($con,$sql); /*while($row = mysqli_fetch_array($result)) { } mysqli_close($con);*/ ?> </body> </html> E não atualizou. Pq será? Compartilhar este post Link para o post Compartilhar em outros sites
Williams Duarte 431 Denunciar post Postado Março 30, 2015 Faltou a função para chamar o ajax <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> <script> $(function(){ $('select').change(function(){ // when one changes var value = $('select').val(); // they all change $.ajax({ type: "POST", data: { value:value }, url: "soma.php", dataType: "html", success: function(result){ alert('Enviado com sucesso' + value); } }); }) }) </script> <select> <option value="111">111</option> <option value="222">222</option> </select> Para trabalhar com JS, tenha a instalado no Firefox a extensão Firebug, para analisar possiveis erros ou até mesmo os envios das requisições. http://getfirebug.com/ Para o chrome tem uma versão light Abs Compartilhar este post Link para o post Compartilhar em outros sites