2011-05-24 48 views
1

我知道如何使用JS獲取div的位置,我使用Jquery的可拖動腳本,並且有一個事件,當人員停止拖動時它應該獲得位置div(頂部和左側):PHP獲取div位置並在會話中存儲

document.getElementById('object').style.top; 
document.getElementById('object').style.left; 

現在的問題是如何將這些座標變成一個php會話......?

+1

與阿賈克斯張貼在PHP收到它們,並將它們設置爲會話變量。 – Fosco 2011-05-24 15:56:01

回答

4

也許最好的(最簡單的)選項是將它們存儲在cookie中。如果您喜歡,可以通過PHP讀取cookie,但即使您不喜歡,也可以在頁面重新加載到同一瀏覽器中時再次使用cookie。

如果您希望存儲值,以便在用戶登錄另一個瀏覽器(或不同的會話)時保存該值,則可以將該Cookie存儲在數據庫中。

+2

+1好的解決方案。該cookie與會話的範圍相同,因爲會話ID也是cookie。 – AndreKR 2011-05-24 15:57:22

2

放下之後,將一個Ajax request設置爲一個PHP腳本,將它們放入$ _SESSION中。

0

這是我做了感謝GolezTrol :)最終的解決方案,我從來不知道,你可以用做餅乾JS

<script type="text/javascript"> 
     function setCookie(c_name,value,exdays){ 
     var exdate=new Date(); 
     exdate.setDate(exdate.getDate() + exdays); 
     var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()); 
     document.cookie=c_name + "=" + c_value; 
     } 
    </script> 
    <script type="text/javascript"> 
    $(function() { 
     $("#object").draggable({ containment: ".body", scroll: false }); 
     $("#object").bind("dragstop", function(event, ui) { 
      var l = document.getElementById('object').style.left; 
      javascript: setCookie('objectl', l, 365); 
      var t = document.getElementById('object').style.top; 
      javascript: setCookie('objectt', t, 365); 
     }); 
    }); 
    </script>