php POST tepki

3 Cevap php

Ben tarayıcısında işlemek istiyorum another php dosyasına bir POST yapıyorum. jquery sonrası fonksiyon başka bir sayfaya yönlendirme değildir. bu app-display.php dosya da veri döndürmek için bekliyor. koduna bakabilirsiniz.

echo    '<div class="showcase_URL"><a class="purl" name="'.$row->num.'" href="#">PROJECT URL</a></div>';

ne javascript içinde bugüne kadar var ise:

$(".showcase_URL a").click(function() {
  //alert($(this).attr("name"));
    var number = $(this).attr("name");      
    $.post(
    "app-display.php", 
    {app: number}, 
    function(data){
        top.location.href = 'app-display.php';  
        });
});

ne app-display.php var:

$query = 'SELECT num, title, thumb_url, url, type, cat, dated, details FROM app WHERE `num` = "$_POST[app]"';

but it is currently giving me a page without the contents of app-display.php. all the other fragments of the page are loading: header, footer etc. the PHP Response (in Firebug) I am getting is the normal html of the page.

ben nasıl yapmalıyım?

3 Cevap

Sadece kullanmak düz eski <form action="app-display.php"> geri veri almak gerekmez bu şekilde.

Geri arama top.location.href ayarlanması sorun - bir yönlendirme var. $.post() düzgün ilanı, ve bu tam bir zamanlar o data parametresi herhangi bir sonuç dönen, geri çağırma işlevi bulunuyor patlar edilir. Geri arama yönlendirerek, tüm bu atmadan ve app-display.php düz bir GET isteğini yapıyoruz.

Bu bir AJAX çağrı & olmak için aslında demek durumunda data parametresinin yeniden yönlendirme yerine bir şeyler yapmak için arama işlevini değiştirmek, yeni bir sayfaya geçmek değil. Gibi bir şey function(data) { $('#some-div').html(data); }, bazı div içine yanıtı dökümü.

Eğer sadece bir değişken tanımlar size göstermek ettik hattı dışında PHP sayfasında başka neler var. Eğer sadece gösterecektir, bunu bazı ham metni koyarsanız çalışır? Tüm senin sorgu satırı yanlış olduğunu tahmin sonra, bu okumalısınız $query = 'SELECT num, title, thumb_url, url, type, cat, dated, details FROM app WHERE num = '.$_POST["app"];