十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
数据库提到的数据一般是资源类型的,要逐一读出,添加到数组
成都创新互联于2013年开始,是专业互联网技术服务公司,拥有项目网站设计制作、成都做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元临猗做网站,已为上家服务,为临猗各地企业和个人服务,联系电话:13518219792
while($row = mysql_fetch_assoc($res)){
$data[] = $row;
}
$sql
=
"select
class
from
name
where
Id
=
1";
$res=mysql_query($sql);
$row=mysql_fetch_array($res);
mysql_free_result($res);
$arr=explode(',',$row['name']);
print_r($arr);
从你的表述,我的分析是:你的数据库有30条左右的数据行,每次全部都查出来(需要一个二维数组,这样便于管理),每一行数据有3个字段,你需要的结果是,当页面刷新的时候,每次随即显示7条数据。代码如下:
?php
// 连接数据库
$link = mysql_connect('主机名', '用户名', '密码');
// SQL查询语句,条件WHERE如果没有可以不加,不需要LIMIT,全部查出来
$sql = "SELECT `字段1`, `字段2`, `字段3` FROM `表名` WHERE `条件`;";
// 执行SQL语句,获取查询结果集
$result = mysql_query($sql, $link);
// 循环遍历结果集 用意是为了构建二维数组,不懂不要紧用了就明白,双!!号是为了将while循环中表达式的值强制转换成布尔值,便于判断,可以不加,我习惯加上
while (!!$assoc = mysql_fetch_assoc($result)) {//以关联数组的方式解析结果集
$data[] = $assoc; // 将解析的结果放入数组中,创建一个二维数组
}
// 初始化一个数组,下面要用到,是用来存放随即7个数组的下标的
$keys = array();
// 写一个自定义函数,需要用到递归算法
function get_key($keys, $data) {
// 这里用到了一个随即数字函数mt_rand()而不是rand(),因为前者是后者的加强版,个人比较喜欢前者,当然用后者在这里也是完全可以的,根据自己的喜好来定
if (!in_array($key = mt_rand(0, count($data) - 1), $keys)) {
// 说明没有重复,接收
return $key;
} else { // 说明重复继续递归
return get_key($keys, $data);
}
}
// 使用for循环随即读取数据中的7条数据,当然用foreach也可以,根据自己的喜好来定
for ($i = 0; $i 7; $i ++) {// 这里比较复杂的就是需要7条不同的数据,不能相同
// 获取不同的7条数据的下标
$keys[] = get_key($keys, $data);
}
// 7个不同数据的下标有了,接下来就是遍历数据了,用foreach
foreach ($keys as $key) {
echo '字段1:' . $data[$key]['字段1'];
echo 'p /';
echo '字段2:' . $data[$key]['字段2'];
echo 'p /';
echo '字段3:' . $data[$key]['字段3'];
echo 'p /';
}
// 问题解决,这只是一种解决方案,当然还有其他很多种,最后记得关闭数据库和销毁结果集
mysql_free_result($reuslt); // 销毁结果集
mysql_close($link)// 关闭数据库
// 销毁变量
unset($result);
unset($link);
?
希望我的方案,能够帮你解决问题,如果还有任何问题或疑惑欢迎追问~
function(){
$查询="select
*
from
表";
//
如果只查询标题,就只用些标题的对应字段名
//连接数据库
for($i=0;$i$记录数;$i++){
$读取=$lj-fetch_assoc();
//
查询
$sid[$i]=$读取[s_id];
$标题[$i]
=
$读取[s_title];
}
$arra=array
($aid,$title);
return
$arra;
}
不知可否帮你解决问题了
假如 数据为 $value
$temp=explode(",",$value);
foreach($temp as $v){
$result[$v]=1;
}
然后html的时候可以这样:
if($result['admin']){
echo 'input type=checkbox /';
}
同理其他类型,可以foreach 输出
mysql_fetch_array (取数字和索引数组)
mysql_fetch_assoc ( 取索引数组)
mysql_fetch_row (取数字数组)
mysql_fetch_object (取对象)
取的数据内容是一样的,类型不一样,访问方式不一样