2014-02-25 64 views
0

任何人都可以幫助我...如何在Ajax中,如果查詢中的數據已成功保存或數據已被保存在條件警報對話框。如何把條件警報框在ajax

我想要做的是,如果查詢被保存,一個警報框會彈出,同樣如果數據已被保存。

腳本代碼:

<script type="text/javascript"> 
$(document).ready(function() { 
    $('#updates').click(function (e) { 
     e.preventDefault(); 
     var data = {}; 
     data.region_text = $('#t_region').val(); 
     data.town_text = $('#t_town').val(); 
     data.uniq_id_text = $('#t_uniq_id').val(); 
     data.position_text = $('#t_position').val(); 
     data.salary_grade_text = $('#t_salary_grade').val(); 
     data.salary_text = $('#t_salary').val(); 

     for(var $x=1;$x<=15;$x++) { 
      data['id'+$x+'_text'] = $('#id'+$x).val(); 
      data['aic'+$x+'_text'] = $('#aic'+$x).val(); 
      data['name'+$x+'_text'] = $('#name'+$x).val(); 
      data['optA'+$x+'_text'] = $('#optA'+$x).val(); 
      data['optB'+$x+'_text'] = $('#optB'+$x).val(); 
      data['optC'+$x+'_text'] = $('#optC'+$x).val(); 
      data['optD'+$x+'_text'] = $('#optD'+$x).val(); 
      data['other_qual'+$x+'_text'] = $('#other_qual'+$x).val(); 
      data['interview'+$x+'_text'] = $('#interview'+$x).val(); 
      data['total'+$x+'_text'] = $('#total'+$x).val(); 
     } 

     $.ajax({ 
      type: "POST", 
      url: "insert.php", 
      data: data, 
      cache: false, 
      success: function (response) { 
      // We are using response to distinguish our outer data variable here from the response 
      } 
     }); 

    }); 
}); 
</script> 

insert.php代碼:

<?php 
    include('../connection.php'); 
    date_default_timezone_set('Asia/Manila'); 

    $region  = @$_POST['region_text']; 
    $town   = @$_POST['town_text']; 
    $uniq_id  = @$_POST['uniq_id_text']; 
    $position  = @$_POST['position_text']; 
    $salary_grade = @$_POST['salary_grade_text']; 
    $salary  = @$_POST['salary_text']; 

$dupesql = "SELECT * FROM afnup_worksheet WHERE funiq_id = '$uniq_id'"; 
$duperow = mysql_query($dupesql); 
if(mysql_num_rows($duperow) > 0){ 
    exit; 
}else{ 

    for($n=1;$n<=15;$n++) { 


    $id   = @$_POST['id'.$n.'_text']; 
    $aic   = @$_POST['aic'.$n.'_text']; 
    $name   = @$_POST['name'.$n.'_text']; 
    $optA   = @$_POST['optA'.$n.'_text']; 
    $optB   = @$_POST['optB'.$n.'_text']; 
    $optC   = @$_POST['optC'.$n.'_text']; 
    $optD   = @$_POST['optD'.$n.'_text']; 
    $other_qual = @$_POST['other_qual'.$n.'_text']; 
    $interview = @$_POST['interview'.$n.'_text']; 
    $total  = @$_POST['total'.$n.'_text']; 



if(!empty($name)){ 
$query = "INSERT INTO afnup_worksheet (faic,fregion,ftown,funiq_id,fposition,fsalary_grade,fsalary,fnl_name,edu_attain,experience,seminars,eligibility,other_qual,interview,ftotal,dateinputed) 
VALUES 
('$aic','$region','$town','$uniq_id','$position','$salary_grade','$salary','$name','$optA','$optB','$optC','$optD','$other_qual','$interview','$total',CURRENT_TIMESTAMP)"; 
$resource = mysql_query($query) or die(mysql_error()); 
     } 
    } 
} 
?> 

回答

2

剛剛從PHP返回狀態:

在你的Ajax success回調
if(mysql_num_rows($duperow) > 0){ 
    echo "1"; // Dup status 
    exit; 
}else{ 
    // All your else code.. echo must be the last thing inside your else block 
    echo "2"; // Saved status 
} 

然後你選擇了它:

$.ajax({ 
    type: "POST", 
    url: "insert.php", 
    data: data, 
    cache: false, 
    success: function (response) { 
     if (Number(response) == 1) 
     { 
      alert("Dup message"); 
     } 
     else 
     { 
      alert("Saved message"); 
     } 
    } 
}); 
1

而是出口的;在你的騙局中,你可以回顯「重複」。你也應該刪除你的$ resource後的die(),並添加if($ resource)echo「ok」;否則回顯「錯誤」;

然後在JavaScript的成功函數(響應),你可以做(​​if response ==「...」)echo duplicate;否則如果...

這只是基本的解釋,但它應該足以指向正確的方向。