doujiao7325 2015-07-24 09:18
浏览 9
已采纳

将解码数据存储到不同的ID

my code is :

//This is the data I am getting [{"x":1,"y":0,"width":2,"height":10},{"x":6,"y":0,"width":2,"height":9}] 

<?php
$position = json_decode($_POST['positionData'], true);
$select_id = "SELECT id FROM homegrid";
$select_id_exec = mysql_query($select_id);
//print_r($position[1]);
//print_r($position[2]); 
//getting result seperately
foreach ($position as $entry) {
    $x = $entry['x'];
    $y = $entry['y'];
    $width = $entry['width'];
    $height = $entry['height'];
    $positionjson = json_encode($entry);
    //print_r($positionjson);
    while($idFromDB = mysql_fetch_assoc($select_id_exec)) {
        //print_r($idFromDB);
        //echo $update = "update homegrid set position = '$positionjson' WHERE id = '" . $idFromDB['id'] . "' ";
        //mysql_query($update);
    }
}
?>

The output of update query is

update homegrid set position = '{"x":6,"y":0,"width":2,"height":9}' WHERE id = '7' 
update homegrid set position = '{"x":6,"y":0,"width":2,"height":9}' WHERE id = '8'

that means result of last position of array is getting.

How can i get result like

update homegrid set position = '{"x":1,"y":0,"width":2,"height":10}' WHERE id = '7' 
update homegrid set position = '{"x":6,"y":0,"width":2,"height":9}' WHERE id = '8'

?

My table structure is given below

id position
7 {"x":1,"y":0,"width":2,"height":10}
8 {"x":6,"y":0,"width":2,"height":9}

Could you please help me to solve this issue?

  • 写回答

2条回答 默认 最新

  • dongyanju1094 2015-07-24 09:26
    关注

    Try this code you dont need two loops

    <?php
    $position = json_decode($_POST['positionData'], true);
    $select_id = "SELECT id FROM homegrid";
    $select_id_exec = mysql_query($select_id);
    //print_r($position[1]);
    //print_r($position[2]); 
    //getting result seperately
    $i = 0;
    while($idFromDB = mysql_fetch_assoc($select_id_exec)) {
        $x = $position[$i]['x'];
        $y = $position[$i]['y'];
        $width = $position[$i]['width'];
        $height = $position[$i]['height'];
        $positionjson = json_encode($position[$i]);
        //print_r($idFromDB);
        $update = "update homegrid set position = '$positionjson' WHERE id = '" . $idFromDB['id'] . "' ";
        mysql_query($update);
        $i++;
    }
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?