2013-05-15 68 views
0

嗨我有一個jqgrid設置與自定義操作按鈕,將選定的行發送到數據庫。我有一切工作,除了它發佈的數據每行7次選擇我只希望它發佈一次選定的行。請任何和所有幫助表示讚賞。 JQGrid, How to post JSON string to PHP to Process and send to Database?JQGRID,如何將選定的行數據只發布一次到數據庫?

$decarr= array(
['id'] => 
518 
['name'] => 
'Brochure for amada' 
['id_continent'] => 
' Ramon' 
['lastvisit'] => 
'5/15/2013' 
['cdate'] => 
'5/29/2013' 
['ddate'] => 
'5/31/2013' 
['email'] => 
'<a href="/media-management/uploads/1368166339.zip">Files</a>' 
) 

PHP:

//First decode the array 
$arr = $_POST["json"]; 
$decarr = json_decode($arr, true); 

$count = count($decarr); 

$values = array(); // This will hold our array values so we do one single insert 

for ($x=0; $x < $count; $x++){ 
$newrec = $decarr; 
$id = $newrec['id']; $id = mysql_real_escape_string($id); 
$name = $newrec['name']; $name = mysql_real_escape_string($name); 
$id_continent = $newrec['id_continent']; $id_continent = mysql_real_escape_string($id_continent); 
$email = $newrec['email']; $email = mysql_real_escape_string($email); 
$lastvisit = $newrec['lastvisit']; $lastvisit = mysql_real_escape_string($lastvisit); 
$cdate = $newrec['cdate']; $cdate = mysql_real_escape_string($cdate); 
$ddate = $newrec['ddate']; $ddate = mysql_real_escape_string($ddate); 


// Create insert array 
$values[] = "('".$id."', '".$name."', '".$id_continent."', '".$lastvisit."','".$cdate."','".$ddate."','".$email."')"; 



} 

// Insert the records 

$sql = "INSERT INTO finish (id, name, id_continent, lastvisit,cdate,ddate, email) 
VALUES ".implode(',', $values); 

$result = mysql_query($sql, $con) or die(mysql_error()); 


?> 
+0

[請不要在新代碼中使用'mysql_ *'函數](http://stackoverflow.com/q/12859942/1190388)。他們不再被維護,並[正式棄用](https://wiki.php.net/rfc/mysql_deprecation)。看到紅色框?改爲了解準備好的語句,然後使用[tag:PDO]或[tag:MySQLi]。 – hjpotter92

+0

重複該問題並不能改善其被回答的機會。不過,提煉它確實如此。 – raina77ow

+0

我明白我是一個noob,所以我想抓住php。我會養成這種習慣。關於我的問題,你有什麼建議? – NewHistoricForm

回答

0

固定!我想通過其他線路反覆重申這些變量。非常愛你們。

//First decode the array 
$arr = $_POST["json"]; 
$decarr = json_decode($arr, true); 
$count = count($decarr); 


for ($x=0; $x < $count; $x++){ 
$newrec = $decarr; 
$id = $newrec['id']; 
$name = $newrec['name']; 
$id_continent = $newrec['id_continent']; 
$email = $newrec['email']; 
$lastvisit = $newrec['lastvisit']; 
$cdate = $newrec['cdate']; 
$ddate = $newrec['ddate']; 

} 

// Create insert array 
$values[] = "('".$id."', '".$name."', '".$id_continent."', '".$lastvisit."','".$cdate."','".$ddate."','".$email."')"; 





// Insert the records 

$sql = "INSERT INTO finish (id, name, id_continent, lastvisit,cdate,ddate, email) 
VALUES ".implode(',', $values); 

$result = mysql_query($sql, $con) or die(mysql_error()); 


?> 
相關問題