2011-08-05 43 views
1

我已經使用上的自動提示腳本此代碼分割CSV創建成3個值中的陣列爲這樣:使用.Split(),然後加入這些值以3個PHP變量

<?php if($_POST['category_submit']){ ?> 
<script type="text/javascript"> 
$(document).ready(function() { 
var arr = $(".as-values").val().split(","); 
var category_1=arr[0]; 
var category_2=arr[1]; 
var category_3=arr[2]; 
}); 
</script> 
<?php } ?> 

我現在要將3'var'內的3個值添加到mysql數據庫中。這樣做的步驟是什麼?

非常感謝先進。 本。

+1

JavaScript不運行在服務器端。它必須使用POST或GET(表單,AJAX等)將數據發送到服務器(由PHP解析)。 – js1568

回答

3

你將不得不使用$.ajax調用PHP腳本插入。記住,如果你要使用PHP來插入,請確保您正在使用Prepared Statements

AJAX

$.post("phpscript.php", { 
    cat1: category_1, 
    cat2: category_2, 
    cat3: category_3, 

}); 

PHP

$query = $mysqli->prepare("INSERT INTO table VALUES (?, ?, ?)"); 
$query->bind_param('sss', $val1, $val2, $val3); // get these from $_POST 
$query->execute(); 
+0

$ va1是否必須是$ cat1 ?,在查詢執行之前它們不必綁定嗎?什麼是'sss'。 – Ben

+0

Google準備好的對帳單。 'sss'代表字符串。這意味着綁定的值將會是字符串。我以爲你會去'$ val1 = trim/stripslashes/etc $ _POST ['cat1']' – Phil

+0

啊我明白了!對不起,我對這一切都很陌生。我現在明白'sss'了,他們將如何存儲在數據庫中,所以它會是'我',int?用你上面的代碼,這將是可取的去在上面顯示的phpscript.php?最好在$ query-> bind_param之前。非常感謝。 – Ben

0

使用ajax發佈這3個值並在服務器端頁面上寫入代碼以插入到數據庫中。

jQuery的AJAX

0
Array.prototype.sum = function(){ 
for(var i=0,sum=0;i<this.length;sum+=this[i++]); 
return sum; 
} 

$(document).ready(function() { 
var arr = $(".as-values").val().split(","); 
$.post('something.php', {'sum':arr.sum()}, function() { 
    //callback success code here 
}); 
}); 
相關問題