有点长~~先感谢看完并回复的朋友~~好了~~直入主题mission_need表是任务表,主键misneed_id
offer_need表是竞价表,主键offneed_id,有任务id字段misneed_id,有发表该竞价的用户id字段offneed_user
userinfo表是用户信息表,主键user_id举例:
现在是想取出misneed_id=5的这个任务下的任务信息+该任务下的所有竞价+每个开出竞价的该用户信息我写的SQL是下面这样的~~~SELECT * 
FROM mission_need
LEFT JOIN offer_need ON mission_need.misneed_id = offer_need.offneed_misid
JOIN userinfo ON offer_need.offneed_user = userinfo.user_id where mission_need.misneed_id=5贴出部分代码如下
<?php
require('config.php');
require('conn.php');$misneed_id=$_GET['id'];
$sql="SELECT * 
FROM mission_need
LEFT JOIN offer_need ON mission_need.misneed_id = offer_need.offneed_misid
JOIN userinfo ON offer_need.offneed_user = userinfo.user_id where mission_need.misneed_id='$misneed_id'";
$query=mysql_query($sql);
$result=mysql_fetch_array($query);
print_r($result);$smarty->display('need_view.html');?>
我数据库中正常取出是两行记录的...
可我打印出的数组却是这样
Array ( [0] => 1 [misneed_id] => 1 [1] => test [misneed_title] => test [2] => test [misneed_text] => test [3] => 5 [misneed_user] => 5 [4] => 4444 [misneed_price] => 4444 [5] => 0 [misneed_status] => 0 [6] => 0 [misneed_moneystatus] => 0 [7] => 20130119170332 [misneed_time] => 20130119170332 [8] => 20130102122522 [misneed_deadline] => 20130102122522 [9] => 1 [misneed_classid] => 1 [10] => ./upload_file/5/130119050132.jpg [misneed_file] => ./upload_file/5/130119050132.jpg [11] => 1 [offneed_id] => 1 [12] => offer test [offneed_text] => offer test [13] => 50 [offneed_price] => 50 [14] => 20130120211950 [offneed_time] => 20130120211950 [15] => 3 [offneed_round] => 3 [16] => 0 [offneed_status] => 0 [17] => 5 [offneed_user] => 5 [18] => 1 [offneed_misid] => 1 [19] => 5 [user_id] => 5 [20] => pingtai [user_name] => pingtai [21] => 03142410d7285f00e4363e005783c83a [user_pwd] => 03142410d7285f00e4363e005783c83a [22] => 1 [user_power] => 1 [23] => [email protected] [user_email] => [email protected] [24] => 2147483647 [user_phone] => 2147483647 ) 这里明显只是其中一条记录的~~求教问题何在

解决方案 »

  1.   

    执行一次 $result=mysql_fetch_array($query);
    只读出一条记录
      

  2.   

    require('config.php');
    require('conn.php');
     
    $misneed_id=$_GET['id'];
    $sql="SELECT * 
    FROM mission_need
    LEFT JOIN offer_need ON mission_need.misneed_id = offer_need.offneed_misid
    JOIN userinfo ON offer_need.offneed_user = userinfo.user_id where mission_need.misneed_id='$misneed_id'";
    $query=mysql_query($sql);
    while(($rs = mysql_fetch_array($query))!==false){
    $result[] = $rs;
    }
    print_r($result);
    $smarty->display('need_view.html');
    这样就可以啦