求教:如何读取Mysql 中的某一条记录?(关于PHP编程)

2024-11-25 04:37:51
推荐回答(3个)
回答1:

加上一个limit就可以了,比如下面这个:
$conn=mysql_connect("localhost","mysql_user","muysql_password");
mysql_select_db("mydb",$conn);
mysql_query("set names utf8");//这一步是指明汉字的编码,现在一般都是utf8,如果不指的话汉字一般都会是乱码或者出其他一些问题
$sel=mysql_query("select * from mytable limit 7,1");mytable就是你的表名那,*代表所有的信息,第一个7代表的就是从第8条记录开始(0代表第一条记录),后面一个1表示从第8条记录开始只读一条记录,也就是只找第8条记录
$info=mysql_fetch_array($sel);
echo $info[1];//info[]数组就可以用来显示你的记录内容了,使用mysql_fetch_array()实际显示很灵活,比如你可以使用数字代表记录中的信息如:$info[1],也可以直接使用字段名比如,$info['title'],显示title字段的信息
?>
那么第15条记录也可以使用类似方法完成,如果你为了简化代码,实际可以使用全数据库的查找然后再在for中使用if找出要显示的记录。
建议不要在where中使用id的序号进行查找,因为不能保证id一定与记录的序号相同。
如果有错误多包含。

回答2:

select top 1 t.id,t.name from (SELECT top 8 id, name FROM mytable order by id) t order by t.id desc

括号里代表:按id排序后,取前8条
括号外表示:从这8条中,按id的倒序取出第一条,也就是你要的第8条
------------------补充----------------
select top 1 t.id,t.name from (SELECT top 8 id, name FROM mytable order by id desc) t order by t.id desc
括号里加个desc就行了

放在
$result = mysql_query("SELECT id, name FROM mytable");

改为$result = mysql_query("select top 1 t.id,t.name from (SELECT top 8 id, name FROM mytable order by id desc) t order by t.id desc");

回答3:

修改这一条:
$result = mysql_query("SELECT id, name FROM mytable");

改为
$result = mysql_query("select url,name from link2 where 1 order by id desc limit 8
);

where后面的是限定条件