前台显示问题。。。。。 我数据库里存一条数据,大量内容,要在前台分段,变成多选框,怎么实现!!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 就是数据库里有一条数据 abcd在前台要让它显示成OaObOcOd o代表多选框, 关键需要有一定的分隔符规则,因为你这是一个字段,必须要有'$#%^%^'这样的分隔符,代码如下:str_split(PHP 5)str_split — 将字符串转换为数组说明array str_split ( string $string [, int $split_length = 1 ] )将一个字符串转换为数组。 参数string 输入字符串。 split_length 每一段的长度。 返回值如果指定了可选的 split_length 参数,返回数组中的每个元素均为一个长度为 split_length 的字符块,否则每个字符块为单个字符。 如果 split_length 小于 1,返回 FALSE。如果 split_length 参数超过了 string 超过了字符串 string 的长度,整个字符串将作为数组仅有的一个元素返回。 范例Example #1 str_split() 使用范例<?php$str = "Hello Friend";$arr1 = str_split($str);$arr2 = str_split($str, 3);print_r($arr1);print_r($arr2);?> 以上例程会输出:Array( [0] => H [1] => e [2] => l [3] => l [4] => o [5] => [6] => F [7] => r [8] => i [9] => e [10] => n [11] => d)Array( [0] => Hel [1] => lo [2] => Fri [3] => end) <?php$tree = array( 1 => array('id' => 1, 'cname' => '一级分类', 'pid' => 0), 2 => array('id' => 2, 'cname' => '二级分类', 'pid' => 1), 3 => array('id' => 3, 'cname' => '三级分类', 'pid' => 2), 4 => array('id' => 4, 'cname' => '四级分类', 'pid' => 3), 5 => array('id' => 5, 'cname' => '四级分类2', 'pid' => 3), 6 => array('id' => 6, 'cname' => '一级分类2', 'pid' => 0),); function getChildArray($pid,$tree){ $arr=array(); if(count($tree)>0){ foreach($tree as $node){ if($node['pid'] == $pid){ $arr[] = $node; } } } return $arr;} function getHtml($tree,$pid=0){ $list =getChildArray($pid,$tree); $html =''; if(count($list)>0){ $html ="<dl>\n"; foreach($list as $item){ $html.='<dt>id:'.$item['id'].'Name:'.$item['cname'].'PID:'.$item['pid']."</dt>\n"; $html.=getHtml($tree,$item['id']); } $html.="</dl>\n"; } return $html;}echo getHtml($tree);?>sry,刚才的那段代码有个地方写错了. 你说的abcd是1个字段还是不同的字段。 最好有个数据结构和你想要的结果结构 <?php//header("Content-Type:text/html;charset:utf-8;");$string=str_split("abcd");//print_r($string);$i=-1;foreach ($string as $v){ $i++; $str.="<input type=\"checkbox\" name=\"checks[$i]\" value =\"{$v}\" >{$v}<br>";}echo "<pre/>";var_dump($_POST['checks']);?><form action="" method="post"><?php echo $str;?><input type="submit" value="提交"></form> php页面里include一个静态页面 php的表单步骤 向nginx发起两次请求,第二次无效,请求高人帮助 session过期后自动注销ID的问题 如何实现页面中的中英文切换? phpmyadmin ZIP 包中有错误: 11 求教数据库问题 如何让表格自动提交? 为什么我的这个php不执行? 新人渴望你的解答,请教PHP抓取JS动态数据问题 我用iconv("gb2312","utf-8",$contents); 转过来的$contents怎么是斜体的字 关于京东 淘宝购物车 session的问题
关键需要有一定的分隔符规则,因为你这是一个字段,必须要有'$#%^%^'这样的分隔符,代码如下:str_split
(PHP 5)str_split — 将字符串转换为数组说明
array str_split ( string $string [, int $split_length = 1 ] )
将一个字符串转换为数组。 参数string
输入字符串。 split_length
每一段的长度。
返回值
如果指定了可选的 split_length 参数,返回数组中的每个元素均为一个长度为 split_length 的字符块,否则每个字符块为单个字符。 如果 split_length 小于 1,返回 FALSE。如果 split_length 参数超过了 string 超过了字符串 string 的长度,整个字符串将作为数组仅有的一个元素返回。 范例Example #1 str_split() 使用范例<?php$str = "Hello Friend";$arr1 = str_split($str);
$arr2 = str_split($str, 3);print_r($arr1);
print_r($arr2);?>
以上例程会输出:Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
[5] =>
[6] => F
[7] => r
[8] => i
[9] => e
[10] => n
[11] => d
)Array
(
[0] => Hel
[1] => lo
[2] => Fri
[3] => end
)
<?php
$tree = array(
1 => array('id' => 1, 'cname' => '一级分类', 'pid' => 0),
2 => array('id' => 2, 'cname' => '二级分类', 'pid' => 1),
3 => array('id' => 3, 'cname' => '三级分类', 'pid' => 2),
4 => array('id' => 4, 'cname' => '四级分类', 'pid' => 3),
5 => array('id' => 5, 'cname' => '四级分类2', 'pid' => 3),
6 => array('id' => 6, 'cname' => '一级分类2', 'pid' => 0),
);
function getChildArray($pid,$tree){
$arr=array();
if(count($tree)>0){
foreach($tree as $node){
if($node['pid'] == $pid){
$arr[] = $node;
}
}
}
return $arr;
}
function getHtml($tree,$pid=0){
$list =getChildArray($pid,$tree);
$html ='';
if(count($list)>0){
$html ="<dl>\n";
foreach($list as $item){
$html.='<dt>id:'.$item['id'].'Name:'.$item['cname'].'PID:'.$item['pid']."</dt>\n";
$html.=getHtml($tree,$item['id']);
}
$html.="</dl>\n";
}
return $html;
}echo getHtml($tree);
?>
sry,刚才的那段代码有个地方写错了.
你说的abcd是1个字段还是不同的字段。 最好有个数据结构和你想要的结果结构
<?php
//header("Content-Type:text/html;charset:utf-8;");
$string=str_split("abcd");
//print_r($string);
$i=-1;
foreach ($string as $v)
{
$i++;
$str.="<input type=\"checkbox\" name=\"checks[$i]\" value =\"{$v}\" >{$v}<br>";
}
echo "<pre/>";
var_dump($_POST['checks']);
?>
<form action="" method="post">
<?php echo $str;?>
<input type="submit" value="提交">
</form>