2012-11-01 100 views
0

我創建動態一些像這樣的標籤:不能字符串轉換爲整數

$('#marker').before('<div class ="file_up" id="bloc_3"></div>'); 

後來的後來,我從ID數:

$('.file_up').live("click",function() 
{ 
    var address = $(this).att('id'); 
    var substr = address.split("_"); 
    var suffix = substr.pop("_"); 

    $.ajax({ 
     url: "xxxx.php", 
     type: "POST", 
     data: "suff="+parseInt(suffix), 
     cache: false, 
     success: function (res){ alert(res);} 
    }) 

} 

然後,在PHP文件,我做這樣的事情:

<?php 

$suff= intval($_POST['suff']); 
$x=4; 
echo $suff+$x; 

?> 

無論我嘗試,而不是得到的7一筆,我得到兩個字符串像t的級聯他的:「34」。

不知道該怎麼做。

任何幫助,將不勝感激。

+1

您是否嘗試過鑄造'$ suff'爲整數,像這樣:'$ SUFF =(INT)$ _ POST [ 'SUFF']' – freshnode

+3

這是實際的代碼,你'正在使用? – Blender

+1

我不知道'流行()'採取任何參數? – jbabey

回答

2

試試這個:

$suff = (int) $_POST['suff']; 
$x = 4; 
echo $suff + $x; 
+0

'var_dump(intval(「3」));'是'int(3)' - 整數3.問題在於別處。 –

+0

是的,我在其他方面嘗試過這種方法(例如,將變量乘以1來強制投射,因爲我在這裏讀了某處)。我相信data-id是要走的路。我會試試看看會發生什麼。 – Baylock

+0

由於所有的post變量都是以文本形式發送的,而且您在服務器上獲得了「3」,所以問題不在於javascript/html相關,而必須是php問題。 – James