2014-01-16 51 views
0

大家好,我正在爲我的網站寫簡單的評論。不知何故,我發現如何使用jquery的,但是當我調用方法後從該查詢我不能訪問$_SESSION('jmeno')我RLY不知道我錯過了什麼.. 有我的代碼我的php文件通過post方法在javascript中調用不能訪問會話爲什麼?

HTML ..

<li><input name="com" class="komentar" type="text" placeholder="Váš komentář..." IDCard="<?php echo $IDcard ?>" /></li> 

JS:

<SCRIPT type="text/javascript" src="/../jquery.js"></SCRIPT> 
      <SCRIPT type="text/javascript" > 

       $(document).ready(function(){ 
     $('.komentar').keyup(function(e){ 
     if(e.keyCode == 13){ 

      var IDcard = $(this).attr('IDcard'); 
      var comment = $(this).val(); 
      $.post('commentService.php',{ IDcard: IDcard, comment: comment}); 
      $(this).val(''); 
     } 
     }); 
    }); 
      </SCRIPT> 

和我commentService.php看起來是這樣的:

<?php 
    error_reporting(E_ALL); 

define('DBHOST', 'localhost');   
define('DBNAME', 'n2mu');    
define('DBUSER', '****');    
define('DBPASS', '****');     

@mysql_connect(DBHOST, DBUSER, DBPASS) or die (mysql_error()); 
@mysql_select_db(DBNAME) or die (mysql_error()); 

@session_start(); 

    $comment = $_POST['comment']; 
    $IDcard = $_POST['IDcard']; 
    $jmeno = $_SESSION['jmeno']; 

    mysql_query("INSERT INTO `card_com` VALUES('". mysql_real_escape_string($IDcard)."', '". mysql_real_escape_string($jmeno)."', '". mysql_real_escape_string($comment)."', now());"); 
    ?> 

如果你能幫助我,那就太棒了!

+0

你需要使用'session_start();'。把它作爲commentService.php – Jompper

回答

0

我看不到您定義的變量的位置。一般來說,這是他們的工作方式;

/* page1.php */ 
<?php 
    session_start(); 
    $_SESSION['jmeno'] = "foo"; 


?> 

/* page2.php */ 
<?php 
    session_start(); 
    echo $_SESSION['jmeno']; //prints out foo 

?> 

確保在運行page2.php之前運行page1.php,以便可以定義或初始化會話變量。確保在每個頁面的最頂端包含

session_start(); 

函數是至關重要的。因此,無論您是通過瀏覽器還是通過JavaScript直接訪問頁面,變量的內容總是相同並不重要。

+0

的第一行我剛剛發現哪裏出了問題^^這正是我沒有。謝謝 – MrDoda

+0

我以爲有一些很大的問題。但真正的問題在我腦海中。對不起,夥計們...... – MrDoda

+0

這對每個人都很重要。這就是所謂的調試。別客氣 – Kimutai

相關問題