2012-04-11 110 views
0

我使用url传递两个arraylist从android到php。如果表(测试)只包含一列(menuname)意味着更新正确。如果我添加另一列表(测试)像menuimage意味着在第一行的列(menuname)更新其他行没有正确更新。如何更新Android数据库中的ArrayList数据库

<?php 
    $old_menu_names=explode(',',preg_replace('/^.*\[(.*)\].*$/','$1',trim($_POST['menuname'], '[]'))); 
    $new_menu_names=explode(',',preg_replace('/^.*\[(.*)\].*$/','$1',trim($_POST['editmainmenu'], '[]'))); 
    mysql_connect("localhost", "root", "MobixMySQL"); 
    mysql_select_db("cozydine"); 
    foreach ($old_menu_names as $key => $old_name) { 
     $new_name = mysql_real_escape_string($new_menu_names[$key]); 
     $old_name = mysql_real_escape_string($old_menu_names[$key]); 
     echo $new_name; 
     mysql_query("UPDATE `mainmenu` SET `menuname` = '$new_name' WHERE menuname = '$old_name'") 
     or die('Error' . mysql_error()); 
     echo "Updated"; 
    } 
?> 

如果有两个列的表是指第一行只更新不更新remaing行..

+0

你为什么不发阵列TP PHP作为JSON? – safarov 2012-04-11 11:03:29

+0

ya。我不知道如何发送json中的namevalue对。那就是为什么我发送数组列表。如果有一列的表格表示正常工作。如果具有多个列的表意味着仅更新第一行。 – prakash 2012-04-11 11:08:03

回答

0
In java you can send name value pair like this 
JSONObject object=new JSONObject(); 
object.put("name","value"); 

and import net.sf.json.JSONObject; 

and send the object. 
and in php version heigher than 5 you can get the values using json_decode() function 

json_decode($object); 


Hope this will help.