2012-01-17 12 views
6

Verilerimi jQuery dosyama gönderdim ve veri dizisini test ettim ve her şey olması gereken yerde saklandı ama php dosyasına gönderdiğimde tüm değişkenler boş. Birisi bana yardım edebilir mi? değil büyük bir dize olarak bir JavaScript sözlük olarakGönderme jQuery'den PHP'ye

$(document).ready(function() { 
    $(".button").click(function() { 
    //$('.error').hide(); 
    var firstname = $("input#First_Name").val(); 
    var lastname = $("input#Last").val(); 
    var areacode = $("input#area_code").val(); 
    var phonenumber = $("input#Phone_Number").val(); 
    var emailaddress = $("input#emailaddress").val(); 
    var confirmemail = $("input#confirm_email").val(); 
    var password = $("input#Password_Input").val(); 
    var confirmpassword = $("input#ConfirmPassword").val(); 
    var streetaddress = $("input#StreetAddress_input").val(); 
    var streetaddress2 = $("input#StreetAddress2_input").val(); 
    var city = $("input#City_Input").val(); 
    var state = $("input#StateInput").val(); 
    var zipcode = $("input#ZipCode").val(); 
    var month = $("input#month_input").val(); 
    var day = $("input#day_input").val(); 
    var year = $("input#year_input").val(); 
    var services = $("input#services_input").val(); 
    var agreement = $("input#agreement").val(); 

    var dataString = 'firstname=' + firstname + '&lastname=' + lastname + '&areacode=' + areacode + '&phonenumber=' + phonenumber + '&emailaddress=' + emailaddress + '&confirmemail=' + confirmemail + '&password=' + password + '&streetaddress=' + streetaddress + '&streetaddress2=' + streetaddress2 + '&city=' + city + '&state=' + state + '&zipcode=' + zipcode + '&month=' + month + '&day=' + day + '&year=' + year + '&services=' + services + '&agreement=' + agreement; 
    alert(dataString); 
    $.ajax({ 
     type: "POST", 
     url: "http://www.vectorcreditsolution.com/js/process.php", 
     data: dataString, 
      success: function() { 
      alert("Yay it was sent"); 
    } 
     }); 
     return false; 
    }); 

ve sonra benim php dosyası

<?php 
    $FirstName = $_POST["firstname"]; 
    $LastName = $_POST['lastname']; 
    $AreaCode = $_POST['areacode']; 
    $PhoneNumber = $_POST['phonenumber']; 
    $EmailAddress = $_POST['emailaddress']; 
    $Password = $_POST['password']; 
    $StreetAddress = $_POST['streetaddress']; 
    $StreetAddress2 = $_POST['streetaddress2']; 
    $City= $_POST['city']; 
    $State = $_POST['state']; 
    $ZipCode = $_POST['zipcode']; 
    $Month = $_POST['month']; 
    $Day = $_POST['day']; 
    $Year= $_POST['year']; 
    $Service=$_POST['services']; 

    var_dump($_POST["firstname"]); 
    var_dump($_POST['firstname']); 
    var_dump($_POST[firstname]); 
+4

Bunu el ile yapmak yerine, [ajaxForm veya serialize] kullanın (http://stackoverflow.com/a/1960245/797303) –

+0

Aptal Soru: $ _POST değeri olup olmadığını sınamak üzere PHP dosyanızı görüntülemek için hangi adımları izliyorsunuz? doldurulur? Yanıtı kontrol etmek için ateşböceği kullanıyor musunuz?, Alan kodunu: { \t \t \t ad: ad, \t \t \t lastname: lastname, \t \t \t alan kodu – DampeS8N

+0

oh – user1154295

cevap

4

serialize değer veriyoruz. Belki de, var dökümlerin sayfada görünmesini bekliyorsunuzdur. Vermeyecekler, verileri nasıl gördüğünüzü kullanabileceğiniz başarı fonksiyonuna geri dönecekler.

jQuery'nin AJAX yöntemi, PHP dosyanızdaki çıktıyı başarı fonksiyonundaki 'ret' değişkenine aktarır. Örneğin, bir HTML başarı iletisini döndürmek isterseniz, söz konusu HTML'yi yenilemeden sayfaya ekleyebilirsiniz. Ya da milyonlarca şeyden herhangi biri.

AJAX'ta okumalısınız.

Değişim Bu: Bu To

$.ajax({ 
type: "POST", 
    url: "http://www.vectorcreditsolution.com/js/process.php", 
    data: dataString, 
    success: function() { 
     alert("Yay it was sent"); 
    } 
}); 

:

$.ajax({ 
type: "POST", 
    url: "http://www.vectorcreditsolution.com/js/process.php", 
    data: dataString, 
    success: function(ret) { 
     alert(ret); 
    } 
}); 

Sonra jQuery ile sayfadaki butonuna tıklayın.

Bu sayfadaki diğer cevaplarla birleştirmeyin. Biri dizi anahtarlarınızı değiştirecek (serialize).

+0

oh wow uyarı kutusu dize (10) sınama – user1154295

+0

döndü ancak ileti değerleri hala NULL – user1154295

+0

Doğrudan [php file] (http://www.vectorcreditsolution.com/js/process.php) kullanmayın. "Test" formuna girdiğiniz değer mi? AJAX yanıtı (uyarı kutusu) size PHP çıkışını gösterir. – DampeS8N

5

deneyin gönderme verileri:

$.ajax({ 
    // ... 
    data: { 
     firstname: firstname, 
     lastname: lastname, 
     // etc. 
    } 
}); 
+0

Ben denedim :-) yanıt için teşekkür ederim ve hala boş \t veri var var_dump kullanılan \t \t \t phonenumber: phonenumber, \t \t \t emailaddress: emailaddress, \t \t \t şifresi: p assword, \t \t \t StreetAddress: StreetAddress, \t \t \t streetaddress2: streetaddress2, \t \t \t şehir: şehir, \t \t \t durumu: devlet, \t \t \t posta kodu: Posta kodu, \t \t \t ay: ay \t \t \t}, – user1154295

0

Ben serialize() jquery işlevini kullanmak. Aksine her alanlar için bakmak daha Sen AJAX döndü Verilerin çıkışını değildir ve bunu görüntülemek için bir araç kullanmayan tüm formu

$("#form-id").serialize(); 


$.ajax({ 
    type: "POST", 
    url: "http://www.vectorcreditsolution.com/js/process.php", 
    data: $("#form-id").serialize(), 
     success: function() { 
     alert("Yay it was sent"); 
} 
    }); 
    return false; 
}); 
+0

Bu, dizilerini değiştirecek Onlara tuşlar. – DampeS8N

+0

Onları formdaki alan adına değiştirir. Genellikle tüm bunlar zararlı değildir, ancak php'lerini değiştirmek zorunda kalacaklardır. – VictorKilo