2012-11-27 35 views
-1

我無法接收到我的php腳本的數據值,但是當我發送這個數據時,ajax成功激活,但數據庫上的數據沒有更改。ajax無法將數據字符串傳遞到php

 $.ajax({ 
     type: "POST", 
     url: "database/clientpanel/agent_panel/notiffolder/notifedit.php", 
     data: { 
     email: email, 
     number: number, 
     emailon: emailon, 
     texton: texton, 
     email_delay: emaildel, 
     ext_delay: textdel, 
     timezone1: zone1, 
     timezone2: zone2 
     }, 
     cache: false, 
     success: function(html){ 
      $("#upnotif").show(); 
      $("#errnotif").hide(); 
      $("#errnotif1").hide(); 
      $("#errnotif2").hide(); 
     } 
    }); 

PHP

<?php 
session_start(); 
include("../../../dbinfo.inc.php"); 

$query=" select * from tele_panel_notification where client='".$mysqli->real_escape_string($_SESSION['clientid'])."'"; 
$result = $mysqli->query($query); 
$row = $result->fetch_assoc(); 
$client = $row['client']; 

if($client == ""){ 
$query = "insert into tele_panel_notification set 
emailon = '".$mysqli->real_escape_string($_POST['emailon'])."', 
texton = '".$mysqli->real_escape_string($_POST['texton'])."', 
timezone = '".$mysqli->real_escape_string($_POST['timezone'])."', 
timezone2 = '".$mysqli->real_escape_string($_POST['timezone2'])."', 
email = '".$mysqli->real_escape_string($_POST['email'])."', 
email_delay = '".$mysqli->real_escape_string($_POST['email_delay'])."', 
text_delay = '".$mysqli->real_escape_string($_POST['text_delay'])."', 
number = '".$mysqli->real_escape_string($_POST['number'])."', 
client='".$mysqli->real_escape_string($_SESSION['clientid'])."'"; 

    //execute the query 
    if($mysqli->query($query)) { 
     //if saving success 
     echo "true"; 
    }else{ 
     //if unable to create new record 
     printf("Errormessage: %s\n", $mysqli->error); 
    } 
} 
else{ 
$query = "UPDATE tele_panel_note SET 
emailon = '".$mysqli->real_escape_string($_POST['emailon'])."', 
texton = '".$mysqli->real_escape_string($_POST['texton'])."', 
timezone = '".$mysqli->real_escape_string($_POST['timezone'])."', 
timezone2 = '".$mysqli->real_escape_string($_POST['timezone2'])."', 
email = '".$mysqli->real_escape_string($_POST['email'])."', 
email_delay = '".$mysqli->real_escape_string($_POST['email_delay'])."', 
text_delay = '".$mysqli->real_escape_string($_POST['text_delay'])."', 
number = '".$mysqli->real_escape_string($_POST['number'])."' 
where client='".$mysqli->real_escape_string($_SESSION['clientid'])."'"; 

    //execute the query 
    if($mysqli->query($query)) { 
     //if saving success 
     echo "true"; 
    }else{ 
     //if unable to create new record 
     printf("Errormessage: %s\n", $mysqli->error); 
    } 
} 

    //close database connection 
$mysqli->close(); 

?> 
+0

檢查ajax的URL,並在php上的代碼頂部,嘗試首先輸入echo「test」;死;如果你使用Firefox或者在你的控制檯上(Chrome,IE),如果它輸出「test」,如果沒有輸出,那麼你的網址出現問題 – PinoyStackOverflower

+0

你是否檢查數據是否成功到達到php頁面。 –

回答

2

看看你的PHP的一部分,

$result = $mysqli->query($query); 
    $row = $result->fetch_assoc(); 
    $client = $row['client']; 

    if($client == ""){ 

你應該,如果你希望能夠知道是否該行已經存在與你行直接驗證:

$result = $mysqli->query($query); 
    $row = $result->fetch_assoc(); 
    //$client = $row['client']; 

    if(!$row){ 

然後你r客戶端變量是無用的。