php分类mysql数据 PHP的数据类型主要有哪几种

php如何把从mysql数据库中的数据在一行中以2个2列3行的形式输出来

这个就要看你的数据库表的设计和你程序处理了

我们提供的服务有:网站建设、成都网站设计、微信公众号开发、网站优化、网站认证、黄骅ssl等。为成百上千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的黄骅网站制作公司

比如你有一个表是放文章分类的

每个文章分类又可以有很多文章

那么你可以设计两表 ,一个是文章分类表,一个是文章表

在文章表里有个外键是关联文章分类的

实现就是

先查出所有文章分类的数据,放入一个数组

然后再循环这个数组去查每一个文章分类对应的所有文章

那么你这样的数组结构就出来了

我写一段伪代码吧。。。

$article_cate = 获取的文章分类数组;

foreach($article_cate as $key =$val){

$cate_id = $val['cate_id'];//文章分类ID,这个你可以自己随便指定

$articles = 获取的文章数组;

$val['articles'] = $articles ;存入文章列表

$article_cate[$key]=$val;

}

这样这个$article_cate数组就是你想要的结构了

array(

0=array(

'文章分类名称字段' =文章分类名,

'articles'=array(

0=array(

'文章标题字段' =文章标题,

文章内容字段' =文章内容

),

1=array(

'文章标题字段' =文章标题,

文章内容字段' =文章内容

)

)

),

1=array(

'文章分类名称字段' =文章分类名,

'articles'=array(

0=array(

'文章标题字段' =文章标题,

文章内容字段' =文章内容

),

1=array(

'文章标题字段' =文章标题,

文章内容字段' =文章内容

)

)

)

)

大概就是这样吧,手写的,不知道有没有写错

像这样的结构,一般都是几个循环嵌套一下

当然如果超过两个循环的话,最好写一个方法,在方法里处理其他的循环

你自己去尝试一下吧

PHP+MYSQL如何调用各个分类里的文章

如果类的个数固定,并且不是很多,那么可以使用下面的方式:

$list1='';//分类一的文章列表

$list2='';//分类二的文章列表

$list3='';//分类三的文章列表

$sql='select cls, title from blog';//获取文章标题的SQL,你可以同时提取其它的作者、时间等字段

$res=mysql_query($sql);//可能你是使用的其它数据库,反正原理基本上相同

while ($row=mysql_fetch_array($res)){

//把数据库提取的文章标题添加到各自类别的字符串后面

if ($row[cls]==1) $list1.="$row[title]br";

elseif ($row[cls]==2) $list2.="$row[title]br";

elseif ($row[cls]==3) $list3.="$row[title]br";

}

mysql_free_result($res);

//下面输出内容

echo EMD

tabletr

td分类一BR$list1

td分类二BR$list2

td分类三BR$list3

/table

END;

PHP如何读取MySQL数据?

PHP读取MySQL数据有如下方法:

方法一:

?

$rs = mysql_query($q, $dbh);

while($row = mysql_fetch_array($rs)) echo "$row[id] $row[name] br /";

/* id和name可以换位置 */

@mysql_close($dbh);

/* 关闭到mysql数据库的连接 */

?

方法二:

?

$rs = mysql_query($q, $dbh);

while($row = mysql_fetch_object($rs)) echo "$row-id $row-name br /";

/* id和name可以换位置 */

?

方法三:

?

$rs = mysql_query($q, $dbh);

/* 定义变量 rs ,函数mysql_query()的意思是:送出 query 字串供 MySQL 做相关的处理或者执行.由于php是从右往左执行的

,所以,rs的值是服务器运行mysql_query()函数后返回的值 */

if(!$rs){die("Valid result!");}

echo "table";

echo "trtdID/tdtdName/td/tr";

while($row = mysql_fetch_row($rs)) echo "trtd$row[0]/tdtd$row[1]/td/tr";

/* 定义量变(数组)row,并利用while循环,把数据一一写出来.

函数mysql_fetch_row()的意思是:将查询结果$rs单列拆到阵列变数中.

$row[0] 和 $row[1] 的位置可以换*/

echo "/table";

?

总结:方法一是效率最高的,推荐日常使用。

php+mysql怎么实现无限级别分类,数据库怎么设计?只用一条SQL语句读出数据,怎么解决+新闻- |—国际新闻

数据库中给多个父级ID字段,例如:国内新闻的PID(父级ID)是新闻的ID,体育新闻的PID是国内新闻的ID,这样通过查找PID就可以找到上一级别。

PHP MYSQL 的多级分类树结构

打开数据库那就不写了。

前几天刚写了一个。你看下

/* 表结构

CREATE TABLE `lh_categroy` (

`id` int(10) NOT NULL auto_increment,

`parentid` int(6) NOT NULL,

`name` varchar(255) NOT NULL,

`keyword` varchar(255) NOT NULL COMMENT '关键字',

`des` varchar(255) NOT NULL COMMENT '描述',

PRIMARY KEY  (`id`),

UNIQUE KEY `name` (`name`)

) ENGINE=MyISAM AUTO_INCREMENT=44 DEFAULT CHARSET=utf8;

*/

/**

* 获得所有栏目排序后的列表

* @return array

*/

function getAllOrderColumns($id = 0) {

global $columns;

$result = array();

if ($id) $result[$id] = $columns[$id];

foreach ($columns as $column) {

if ($column['parentid'] == $id) {

$column['level'] = 0;

$result[$column['id']] = $column;

getColumns($columns, $column['id'], $result, 1);

}

}

return $result;

}

function getColumns($columns, $cid, $result, $l = 1) {

foreach ($columns as $c) {

if ($c['parentid'] == $cid) {

$c['level'] = $l;

$result[$c['id']] = $c;

getColumns($columns, $c['id'], $result, $l + 1);

}

}

}

$sql = 'select * from lh_categroy';

$query = mysql_query($sql);

while($row = mysql_fetch_assoc($query)){

$columns[]=$row;

}

$fenlei = '';

$fenlei =  'select name="cid" style="width:200px; height:25px;"

option value="0"请选择分类/option';

foreach(getAllOrderColumns() as $v){

$v[name] = $v[level] ? ($v[level]==1 ? 'nbsp;nbsp;|-'.$v[name]:'nbsp;nbsp;nbsp;|-'.$v[name]) : $v[name];

$fenlei .= "option value='$v[id]'$v[name]/option";

}

$fenlei .= '/select';

echo $fenlei;


标题名称:php分类mysql数据 PHP的数据类型主要有哪几种
文章网址:http://myzitong.com/article/docjcpi.html