2015-06-24 64 views
2

我創建了我的第一個發送數據到數據庫的ajax腳本。但是有一個問題,在新創造的行中有0個值。在Firebug中,我可以看到在php文件中有這些值。發送0值到數據庫

Parametersapplication/x-www-form-urlencodedDo not sort 
currentTasken 
1415 
currentUser 
37 
Source 
currentUser=37&currentTasken=1415 

但不知何故,他們無法到達數據庫,這裏是我的PHP文件。

<?php 
$currentUser = isset($_POST['$currentUser']); 
$currentTasken = isset($_POST['$currentTasken']); 
    $con = mysql_connect("localhost", "root", "") or die(mysql_error()); 
    if(!$con) 
     die('Could not connectzzz: ' . mysql_error()); 
    mysql_select_db("foxi" , $con) or die ("could not load the database" . mysql_error()); 

    $check = mysql_query("SELECT * FROM dotp_task_log"); 
    $numrows = mysql_num_rows($check); 
    if($numrows >= 1) 
    { 
     //$pass = md5($pass); 

      $ins = mysql_query("INSERT INTO dotp_task_log (task_log_creator, task_log_Task) VALUES ('$currentUser' , '$currentTasken')") ; 

     if($ins) 
      die("Succesfully Created Log!"); 

     else 
      die("ERROR"); 

    } 
    else 
    { 
     die("Log already exists!"); 
    } 

?> 

這裏是數據庫

5 0 NULL NULL 0 0 NULL  0 0 NULL 

回答

7

你在你的代碼2級的錯誤。

$currentUser = isset($_POST['$currentUser']); 

1:我相信你錯了,你的意思是:

$currentUser = isset($_POST['currentUser']); 

2:isset的是,在情況下返回變量定義和設置或一個布爾值的函數不。所以$currentUser變量現在保存布爾值(0或1),而不是發佈數據的值。

你應該使用這樣的:

$currentUser = isset($_POST['currentUser']) ? $_POST['currentUser'] : ''; 

這是一個if-else條件下的短版。 如果設置了$_POST['currentUser'],則變量$currentUser應保存其值,否則 - 它將具有空字符串。

其它注意事項:

  • 請記住,你應該消毒$_POST數據。
  • 您正在使用已棄用的mysql_*。考慮使用mysqliPDO
+0

Thnx @Ofir Baruch – TorresAlGrande

+0

不客氣。請考慮接受我的答案,如果它幫助你。 –

+0

我需要等3分鐘:) – TorresAlGrande