Javascript serverside bilgi almak nasıl?

4 Cevap php

Ben ne gerek simüle etmek için gidiyorum yüzden bu soruyu sormak için nasıl bilmiyorum, bazı geliştiriciler ben php ile javascript işleme ne gerek olun. Basit bir örnek dosya gibi görünecektir:

my_javascript_file.php

<?php include "my_class.php"; ?>

$(document).ready(function(){    

  $.ajax({
    url: "<?php $my_obj->post_url(); ?>",
    success: function(){
      alert("Post successful")
    }
  });
};

hangi aşağıdaki çıkışlar:

$(document).ready(function(){    

  $.ajax({
    url: "/post_handler.php",
    success: function(){
      alert("Post successful")
    }
  });
};

Benim soru geliyor, saf js teknikleri ile bunu başarmak için herhangi bir yolu var mı?

Thanks, Sinan.

P.S. This is just a simple example of course I can hardcode post url here, or get url by location object etc with javascript I hope you get what I mean...

EDIT: Ben sadece benim uygulaması bazı bilgi almak ve dinamik benim javascript için yazma, kullanılan terimler tarafından karışıklıkları için üzgünüm. Ben, vb kuyrukluyıldızı veya veri kodlamak demek istemiyorum

(Herhangi bir yolu varsa) Ne bilmek istiyorum javascript dosyaları sunucu tarafı verilerini kullanmak için nasıl. Ne gibi php yöntemi benim örnekte, sadece benim uygulamadan gelen bir dize yankıları gelmez. Bir javascript kütüphanesi veya bir çerçeve ile, bir şablon motoru gibi değişkenler atamak yapmak ve şablon sistemi kullanmak için bir yolu var mı. Şimdi daha açık umuyoruz.

4 Cevap

Evet orada bir yoldur, ama onun tuhaf. Sen jaxer server kullanabilirsiniz. Bu sunucu üzerinde javascript çalıştırmanızı sağlar.

EDIT:

Ben benim yorumum söylediğim gibi ben bir çiftleşmiş motoru uygulamak için müşteriye ekstra js indirmek istiyorum sanmıyorum. Onun muhtemelen bahsediyoruz bir ayrılık veya kopması. Hangi durumda ayrı bir js dosyasında aşağıdaki olabilir:

var myObject = {
var1 : '',
var2 : 0,
init : function(options) {
	var1 = options.var1;
	var2 = options.var2;

	$('#someElem').click(function() {
		// do stuff
		return false;
	};
}

};

ve daha sonra html sayfasından bunu böyle diyoruz

<head>
<script type="text/javascript">
	var options = {
		var1 : <?php echo "hello" ?>,
		var2 : <?php echo 1 ?>
	}
	myObject.init(options);
...

o server push, sen comet sunucularına bakmak gereken bir gerçek olup olmadığını ben ... i "itme" ile ne demek biliyor emin değilim ...

Ayrıca, benim için o "saf js teknikleri" ne belirsiz ... Eğer tabii jQuery olmadan yapabilirsiniz ... ama öncelikle DOM işlemek için tasarlanmış dil elbette yeterli olmayacak gibi saf JS, ... ihtiyacınız AJAX gibi yaklaşımlar ... Ancak HTML5 itme için bir öneri vardı, ama evet, this is gonna take some time ...

bu yüzden bu yardımcı olur umarım ... ama belki soru biraz açıklamak gerekir, ben daha iyi cevaplar alırsınız eminim ... :)

Veya JSON, hangi durumda - Sen .get veya .ajax (sizin urls.php doğru bu işlemek ve uygun bir dize dönecektir varsayarak kullanarak URL için sunucu sorabilirsiniz siz de kullanabilirsiniz .getJSON - İçinde URL ile). (Tabii denenmemiş) Örneğin:

$.get("urls.php", { operation: "post_handler" },
    function(data){
        $.ajax({
            url: data,
            data: eventData,
            success: function(){
                alert("Post successful");
            }
        });
    });

================= Düzenleme: Yeni Potansiyel Cevap =====================

Eğer HTML biçimlendirme, istemci tarafında elde JavaScript veri enjekte istiyor musunuz, sunucudan JavaScript Data Objects almak için yönetmek demek?

Bu durumda eğer IBDOM bakmak olabilir: http://ibdom.sf.net/

Sanırım birkaç yıl için bir sitelerin bir dizi üretim içinde yaşadım, yazdım.

==================== Aşağıda ================= Eski cevap

Yani "EventData" JavaScript tarafından tüketilen "bir şey" olmak istiyorum.

PHP JSON bir göz alarak birinci öneriyoruz:

[Gerekli değildir PHP JSON ÇIKARILDI link]

Sonra PHP kodu bu benzeyebilir:

<?php include "my_class.php"; ?>

$(document).ready(function(){    

  $.ajax({
    url: "<?php $my_obj->post_url(); ?>",
    data: <?php json_encode ($my_obj->getData()); ?>,
    success: function(){
      alert("Post successful")
    }
  });
};

Alan sunucu üzerinde PHP tarafından oluşturulan bir json nesne grafiği olacak: Yani burada fikir, sizin "veri" değer olmasıdır.