php içine javascript değişken

3 Cevap php

Ben, bir php işlevi var bu fonksiyonda ben ana penceresinden benim öğesinin değerini almak bir javascript var. Benim sorunum şimdi nasıl php değişkenleri içine bu değeri geçebilir, bir

Herhangi bir yardım büyük takdir ederim.

Teşekkürler

Tirso

Bu kod çalıştı ama ben her zaman değer var 1

İşte benim kod

function do_upload()
{	
	$categories = print '<script type="text/javascript">window.top.window.$("#categories").val();</script>';
}

Ben $ kategoriler için var değeri her zaman 1'dir;

3 Cevap

PHP print(), dil oluşumu her zaman 1 döndürür.

PHP sunucu tarafında yürütür. JavaScript istemci tarafında yürütür. Onları doğrudan getiremezsiniz. Yapabileceğin en iyi JavaScript sunucu üzerinde bir PHP komut dosyası için bir AJAX arama yapmak sahip olacaktır.

PHP kodu (kod istemci tarayıcısına gönderilmeden önce) sunucu üzerinde çalışır ve istemci JavaScript (kod istemci tarayıcısına gönderilir sonra). Ben sunucuya bir istek göndererek başka sunucuya bilgi aktarmak için başka bir yol olduğundan emin değilim. Eğer PHP uygulama (sunucu tarafı) için bir şeyler göndermek istiyorsanız böylece JavaScript kodu (istemci tarafı) bir istek göndermek zorunda olacak. AJAX teknikleri kullanmak olabilir, ama bu başlangıç ​​için sunucu üzerinde başka bir PHP işlemine neden olur. böylece taban PHP sürecinin (kim JavaScript oluşturulan) ve bilgi aktarmak için (JavaScript tarafından çağrılan) yeni süreç arasındaki iletişim için bir yol bulmak zorundasınız. Eğer seans veya dosyaları veya veritabanları gibi sunucu tarafında veri kalıcılığı veya paylaşılan bellek gibi süreçler arası iletişim çözümleri kullanabilirsiniz. ama bu uygulama biraz daha karmaşık olacaktır sanırım.

Yapabileceğiniz en iyi sizin için do_upload yöntemini çağıran bir sunucu tarafı sayfaya bir ajax arama yapmak olduğunu:

$.ajax({ 
    url: '/ajax.php', 
    data: 'category=' + window.top.window.$('#categories').val(), 
    type:'POST', 
    success:function(html){
    } 
});

ajax.php:

if ( isset( $_POST['category'] ) ) {
    do_upload( $_POST['category'] );
}

Istediğiniz formatta emin onun için $ _POST verileri filtrelemek için unutma.