AJAX destekli formu ile Twitter güncellemek

1 Cevap php

Ben güncellenen zaman bir twitter durum güncelleme olacak bir AJAX formu yapmaya çalışıyorum. Ben formu php ile şu anda çalışma var, ama AJAX işlevsellik eklemek için nasıl emin değilim.

İşte formu bulunuyor:

    <form id = "yourwhisper" method = "post" >
        <label for="whisper">Enter your status update</label>
        <textarea id="whisper" name="whisper" rows="2" cols="50" required></textarea>
        <label class="error" for="whisper" id="whisper_error">Must be no more than 140 characters.</label>

        <input id="lat" name="lat" style = "display:none"></input>
        <input id="lon" name="lon" style = "display:none"></input>
        <button type="submit" id = "submit">Pass it on</button>
    </form>

Bu benim form eylemi olarak vardı php (bir twitter api kütüphanesinden bir php fonksiyonunu çağırır) 'dir. Ben şimdi form manager.php için hareket ettik:

$t->update($_POST["whisper"], false, $_POST["lat"], $_POST["lon"]); 

Son olarak, bu AJAX işlevselliği ekler jQuery kodudur. Bu konum belirleme verileri ile birlikte, güncelleştirme için metni alır ve "veri dizisi 'şeklinde form manager.php dosyasına geçirir.

<script type="text/javascript" charset="utf-8">
        $(function() {  
          $('.error').hide();  
          $(".submit").click(function() {  
            // validate and process form here  

            $('.error').hide();  
            var whisper = $("textarea#whisper").val();
            var lat= $("input#lat").val();
            var lon = $("input#lon").val();
            if (whisper == "") {  
                $("label#whisper_error").show();  
                $("textarea#whisper").focus();
                return false;  
            }

            var dataString = 'whisper='+ whisper + '&lat=' + lat + '&lon=' + lon;  
            //alert (dataString);return false;  
            $.ajax({  
              type: "POST",  
              url: "form-manager.php",  
              data: dataString,  
              success: function() {  
                // alert ("form sent");
                });  
              }  
            });  
            return false;

          });  
        });

    </script>

Benim sorunum nasıl o bilgi almak ve heyecan güncelleştirmek için gereken 3 değişkenleri içine koymak için form-manager.php alabilirim, değil mi?

1 Cevap

veri dizisi $_POST['dataString'] olarak PHP için geçerli olmalıdır. Bu bir dize içeren tek bir var olduğunu. Sen explode gerektiği.

Yoksa { whisper: "Foo", lat: "fooLat" } gibi ajax yöntemi veri özelliğini ayarlayabilirsiniz istiyorsanız eğer öyleyse onlar $_POST['whisper'] ve $_POST['lat'] gibi görünecektir