php一段mysql语句的写法,在线等!

<?php$lmbs="10,20,30,40,50,60,70,80,90";?>我想从mysql中调用数据替代10,20,30,40,50,60,70,80,90这些... <?php
$lmbs = "10,20,30,40,50,60,70,80,90";
?>
我想从mysql中调用数据替代10,20,30,40,50,60,70,80,90这些内容,注意:表名是tao,字段有id、value,将value字段最新的9条数据调用出来按正序排列,然后每个数字之间加上逗号,特别注意:最后一个数字后面不能加逗号,不然我的代码会执行出错。
麻烦高手帮我写出对应的调用语句,以及将变量对应的填入到php代码里面的代码,越详细越好,拜托了!
在线等,忘不吝指教!非常非常感谢!
展开
 我来答
cyan24
2014-02-18 · TA获得超过1626个赞
知道小有建树答主
回答量:1128
采纳率:0%
帮助的人:880万
展开全部
    $conn = mysql_connect("localhost", "用户名", "密码") or die("不能连接数据库");  //连接数据库,自己替换参数
    mysql_select_db("数据库名", $conn);
    mysql_query("set names 'UTF-8'");
    $sql = "select * from tao order by id desc limit 9";    //SQL语句,取最新的,一般都是ID自增,所以按ID倒叙取9条
    $result = mysql_query($sql);
    $data = array();
    while($row = mysql_fetch_array($result)){
        $data[] = $row['value']; //将取出的9条数据的 VALUE 值存入数组
    }
    sort($data);    //将数据按升序排列(要确保VALUE字段是 INT 型)
    $str = join(',', $data);   //以逗号分割生成字段串

自己替换下数据库连接的参数,有问题请追问,

以上~

追问
真是高手!非常感谢,问题已经基本解决啦,太高兴了!
不过有个小问题,我不是想把value的值按照正序排列,而是想按照对应的id的大小正序排列,请问应该怎么对应的修改?
期待您帮我解答,谢谢!!!
追答

按照ID的大小升序排列,是指ID越小的,VALUE就放在最前面?

把底下这段替换掉,如果想让ID大的VALUE值在前面,那就在while循环里直接用 $data[] = $row['value'],

如果想让ID小的VALUE值在前面,那就用 array_unshift($data, $row['value']);

    while($row = mysql_fetch_array($result)){
        //$data[] = $row['value']; //将取出的9条数据的 VALUE 值存入数组,按ID倒叙存入
        //取出来的数据是按ID倒叙排序的,所以这块是把先出来的ID大的VALUE值放进数组,后续的VALUE值依次插入数组最前面,就能形成ID最小的值,VALUE在最前面了 
        array_unshift($data, $row['value']);
    }
    $str = join(',', $data);   //以逗号分割生成字段串

有问题再追问吧,

软件开发枫老师
2014-02-18 · TA获得超过585个赞
知道小有建树答主
回答量:599
采纳率:63%
帮助的人:320万
展开全部
//用select查出最新的9条
$sql="select * from tao order by inputtime desc limit 9"; //按时间最新的9条
//得出资源结果集是个数组,先不管,把$lmbs拆了
$arr=explode(',',$lmbs);
//$arr也是一个数组
//这时我们再一起给他循环替换
foreach($arr as $key $val){
   $arr[key]val=$result[$key];//将数组给换成数据库查出的对应值
}

//最后再给重组

$newarr=join(',',$arr);//这样得出的新字符串就是了。代码你要具体实现,说个方法给你,望采纳,累死我了

追问
我只是想把数据库调用出来的value的值按照10,20,30,40,50,60,70,80,90这样的格式替换$lmbs里面对应的值,能帮忙具体写下吗?解决以后我愿意把所有的分全送上!拜托您了,我技术不行!谢谢!!!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
斯微安5
2014-02-18 · TA获得超过238个赞
知道小有建树答主
回答量:852
采纳率:100%
帮助的人:292万
展开全部

你说的每个数字之间指的是那个数字,是这9条记录的id吗

如果是这样的话你可以这样:

$list = array() //获取的数据
foreach($list as $val){
    $arr[] = $val['id'];
}
$need_str = join(',', $arr); //这样就可以获取到类似10,20,30,40,50,60,70,80,90的数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式