十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
不太明白你的意思 但你先用php的函数json_decode($json_str)转化为数组应该就一目了然了.
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、雅安服务器托管、营销软件、网站建设、峨边彝族网站维护、网站推广。
首先逻辑涉及到while内嵌套while是,要用两个不同连接对象
类似
$conn1=mysql_connect(...);
$conn2=mysql_connect(...);
$sql1第一个循环语句
$sql2第二个循环语句
mysql_query($sql1,$conn1)
while($rows=mysql_fetch_array(...)){
mysql_query($sql2,$conn1);
while($rows=mysql_fetch_array(...)){
.......
}
}
关键是建立不同的连接对象如,$conn1和$conn2,不能用一种连接对象,让数据库查询while里面套while
这种可以while里面嵌套while
其次你这样设计多级菜单有问题
$sql = "select * from menu where parent_id=".$this-id;
这边的$this-id;是上级对象返回的结果
可是上级对象返回却是数组 return $arr;
你可以嵌套遍历 在第二层遍历的时候做一下数组的建名 当等于你的目标数组建名再做下一层的遍历 为了代码的高效 你也可以对该建名的数组判断是否为空 如果为空就跳到下一次循环
悬赏高吗?
HTML 代码开始
form action="biao.php" method="post"
select id="content" name="title"
option value="qq"QQ/option
option value="sina"新浪/option
option value="ifeng"凤凰/option
/select
input type="checkbox" name="list[]" value="a" /国内
input type="checkbox" name="list[]" value="b" /国际
input type="checkbox" name="list[]" value="c" /军事
input type="checkbox" name="list[]" value="d" /社会
input type="checkbox" name="list[]" value="e" /历史
input type="submit" value="Submit" /
/form
HTML 代码结束
PHP代码开始 把PHP代码放入 biao.php
?php
$title = $_POST['selse'];
$listz = implode($_POST['list'],',');
$conn=mysql_connect("localhost","root","root");
mysql_select_db("test",$conn);
$sql="INSERT INTO biao(title,list)VALUES('$title','$listz')";
if(!mysql_query($sql,$conn)){
echo "添加数据失败:".mysql_error();
} else {
echo "添加数据成功!";
}
?
PHP代码结束
这个办法有很多。。。
var_export() 这个函数可以将数组原封不动的变成字符串保存,就和打印出来这种一样。就是数据太大。读取用eval()处理。
方法 $list = var_export($list, true); 后面的true很重要。
解码 eval('$list = '.$list.';');
json_encode() 这个函数可以把数组变json格式,数据量小,解析快,我推荐这个。$list = json_encode($list); 解码:$list = json_decode($list);
serialize() 这个函数和上面的差不多,但存的数据更多一些,可以存复杂数据,比如有class的。如果简单数据就用上面的吧。
$result = array(); // 新数组
foreach ($data as $vo) { // $data是原数组
$temp = $vo;
unset($temp['busername']);
foreach ($vo['busername'] as $v) {
$temp['busername'] = $v;
array_push($result,$temp);
}
}
你测试一下看看对不对,有问题请反馈