2014-01-26 83 views
1

我使用post方法傳遞變量,但無法傳遞變量的完整值。AJAX中的POST方法

下面是腳本:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
<script type="text/javascript"> 
$(document).ready(function(){ 

    var problem_code = $("#problem_code").val(); 
    var code = $("#code").val(); 
    var lang = $("#lang").val(); 
    $.ajax({ 
     type: "POST", 
     url: "ajax.php", 
     cache:false, 
     data : {problem_code:problem_code,code:code,lang:lang}, 
     success: function(html) 
     { 
      //alert("ajax response returned.. "); 
      //console.log(html); 
      $(".show-result").empty(); 
      $(".show-result").append('<br>' + html); 
     } 
    }) 

}); 
</script> 

這裏是剩餘部分

<?php 
$code=stripcslashes($_POST['code']); 
$lang=stripcslashes($_POST['lang']); 
?> 

另一個文件 「Submit.php」

現在使用獲取$代碼和$ LANG值傳遞輸入隱藏字段

<input type="hidden" id="problem_code" name="problem_code" value=<?php echo $problem_code;?> > 
<input type="hidden" id="code" name="code" value=<?php echo ($code);?> > 
<input type="hidden" id="lang" name="lang" value=<?php echo $lang;?> > 

但是,當使用隱藏字段傳遞$ code值時,它顯示出意想不到的行爲。

這裏是上述腳本

<input type="hidden" id="problem_code" name="problem_code" value=LUCPAL > 
<input type="hidden" id="code" name="code" value=#include <iostream> 
#include<stdio.h> 
#include<math.h> 
using namespace std; 
int main() { 
int t; 
scanf("%d",&t); 
while(t--) 
{ 
    long long int A,B,copy,sum=0; 
    scanf("%lld %lld",&A,&B); 
    copy=B; 
    int digit=0; 
    while(copy>0) 
    { 
     digit++; 
     copy=copy/10; 
    } 
    while(digit--) 
    { 
     sum=10*sum+9; 
    } 
    long long int sum2=sum/2,diffA,diffB; 
    if(sum2>=A && sum2<=B) 
    { 
     printf("%lld 
",(sum2)*(sum2+1)); 
    } 
    else 
    { 
     diffA=fabs(sum2-A); 
     diffB=fabs(sum2-B); 
     if(diffA<diffB) 
      printf("%lld 
    ",A*(sum-A)); 
     else 
     printf("%lld 
    ",B*(sum-B)); 

    } 
} 
// your code goes here 
return 0; 
} 
> 

<input type="hidden" id="lang" name="lang" value=11 > 
` 
    printf("%lld\n",A*(sum-A) become printf("%lld 

    ",A*(sum-A)); 

和只有「的#include」運行的同時查看源代碼示例中ajax.php從所有碼通過。

+0

你知不知道,你應該使用