jQuery: bir php-dosyaya yazılan tarafından değişken geçirmeden

2 Cevap php

Aşağıdaki i php-dosyaya bazı değerleri gönderilen bir komut dosyası, bir parçasıdır:

var order2 = $(ui.item).attr(\'id\') + \'&action2=insertList&feuser='.$feuser.'\';

$. Sonrası ("index.php? EID = moveitems", Order2,

Ben F.E. okumak için biliyorum "$ _POST ['action2'];" php "action2" değeri, bu kolay yapılır s. ama nasıl "(\ 'id \') attr. $ (ui.item)" değerini okumak için? Herhangi ipuçları apreciated vardır ...

2 Cevap

Bir nesne olarak değerleri geçirmek, uzun bir dize birleştirme, örneğin daha hata ayıklamak için daha okunabilir ve daha kolay:

var data = { itemid: $(ui.item).attr('id'), action2: 'insertList', feuser: $feuser };
$.post('some/where', data, function(data) {
    alert(data);
});

Şimdi değeri $(ui.item).attr('id') $_POST['itemid'] olarak sunucuda kullanılabilir olacak

Bu durumda, sen onu HTML olarak kullanıcıya gönderilmeden önce kod, sunucu tarafında benzediğini bize gösteriyor gibi görünüyor. Bir kez kullanıcıların ucunda, böyle bir şey bakacağız:

var order2 = $(ui.item).attr('id') + '&action2=insertList&feuser=BAR'

Now $(ui.item).attr('id') is a javascript variable. You need to find out what that value is. Once you know what that value is, you can see what it will be as part of the url. For example, now order2 might be:

'FOO&action2=insertList&feuser=BAR'

Bu durumda, $ _POST ['foo'] ayarlanmış olup olmadığını görmek için kontrol edebilir. Eğer javascript değişkeni değerlendirmek için nasıl bilmiyorsanız, her zaman sadece sunucu tarafında print_r ($ _POST) yapmak ve ne olacağını bilmek böylece değerler geri geçirilir ne görebiliyordu. Javascript değişkenlerin değerlerini belirlemek için nasıl bilmiyorum ama, kesinlikle bu ilk öğrenmek gerekir. Kundakçı, bir firefox eklentisi console.log komutu ile javascript değerlerini deşifre yardımcı olabilir.