2016-04-28 21 views
0

I Formen bin Gebäude mit AJAX und Begegnung ein Problem:Blank in der Datenbank gespeicherten Werte - Ajax Forms

Jedes Mal, wenn ich das Formular abschicken, die in der Datenbank gespeicherten Werte gehen leer ... (FYI, natürlich die Seite nicht aktualisiert .. das ist der springende Punkt)

Blank Values

Hier ist meine Datei index.php.

<!doctype html> 
<html> 
<head> 
    <title>Form Practice</title> 
</head> 
<body> 
    <div id="myForm"> 
     Name: <input name="username" type="radio" value="Sagar">Sagar</input> 
       <input name="username" type="radio" value="Saransh">Saransh</input><br /><br /> 
     Profession: <input name="profession" type="radio" value="Coder">Coder</input> 
        <input name="profession" type="radio" value="Entrepreneur">Entrepreneur</input> 
        <input name="profession" type="radio" value="Blogger">Blogger</input><br /><br /> 
     <input type="submit" id="submit" value="Submit"></input> 
    </div> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
<script> 
    $.ajax({ 
     url: "data.php", 
     type: "POST", 
     async: false, 
     data:{ 
      "username":$('input[name=username]:checked', '#myForm').val(), 
      "profession": $('input[name=profession]:checked', '#myForm').val() 
     } 
    }); 
</script> 
</body> 
</html> 

Und mein data.php:

<?php 

require 'connect.php'; 

$db_selected = mysql_select_db(DB_NAME, $link); 

if(!$db_selected){ 
    die('cant use'. DB_NAME . ':'. mysql_error()); 
} 

$username = $_POST['username']; 
$profession = $_POST['profession']; 

$sql = mysql_query("INSERT INTO info (Name, Profession) VALUES('{$username}', '{$profession}')"); 

if(!mysql_query($sql)){ 
    die('Some Error '. mysql_error()); 
} 

mysql_close(); 
?> 
<!doctype html> 
<html> 
<head> 
    <title>Data</title> 
</head> 
<body> 

</body> 
</html> 
+0

Haben Sie den userame und Beruf sicher, die Daten zu machen Echo aus gesendet wurde durch die Ajax-Post? – Matt

+0

Die Seite wird nicht einmal aktualisiert. Es macht also keinen Sinn, den Benutzernamen in data.php auszugeben. Und wenn Sie in der index.php selbst nach einem Echo suchen möchten, existiert die Variable nicht einmal, da wir das Formular noch nicht abgeschickt haben. Also, so oder so wird es nicht helfen. –

Antwort

0

versuchen, diese

<script>  
    $(document).ready(function(){ 

     $('#submit').on('click', function(){ 

      $.ajax({ 
       type: 'POST', 
       async: false, 
       url: 'data.php', 
       data:{ 
        "username":$('input[name=username]:checked', '#myForm').val(), 
        "profession": $('input[name=profession]:checked', '#myForm').val() 
       }, 
       success: function(response) 
       {  

       } 
      }).error(function(request, status, error){ 
       console.log(e); 
      }); 
    }); 

    }); 
</script> 
0

bearbeiten mit diesem

<script>  
     $(document).ready(function(){ 
      $('#submit').on('click', function(){ 
       var username=$('input[name="username"]:checked').val(); 
       var profession=$('input[name="profession"]:checked').val(); 
       $.ajax({ 
        type: 'POST', 
        async: false, 
        url: 'data.php', 
        data:"username=" + username+ "&profession="+ profession, 
        success: function(response) 
        {  

        } 
       }).error(function(request, status, error){ 
        console.log(e); 
       }); 
     }); 

     }); 
    </script>