你先 varDump($msg); 看看什么结果。

解决方案 »

  1.   

    可以加一个参数:
       syncMenmber($username,$truename,$email,&$returnvalue)
    {
    ...
    $returnvalue=$detailMsg
    }执行函数后,调用$returnvalue[。。]就行,
    这就是传址调用的方法如果按照你的方法看这样行不行:
    <?
    include_once("function.php");$username="test";
    $truename="test";
    $email="[email protected]";
    $msg=array();
    $msg=SyncMember($username,$truename,$email);
    echo $msg['id'];?>
      

  2.   

    <?
    include_once("include/config.inc.php");//普通的数据库包含文件function SyncMember($username,$truename,$email)
    {
    $query="select * from tbweb_user where username='$username' and sort='个人'";
    $res=mysql_query($query);
    $num=mysql_num_rows($res);
    $result=mysql_fetch_array($res); if($num==0)//无此username
    {
    $query="insert into tbweb_user (id,username,truename,email,sort,logins) values ('','$username','$truename','$email','个人',1)";
    mysql_query($query);
    $detailMsg=mysql_insert_id();//个人用户的id
    }else{
    $query="update tbweb_user set logins=logins+1 where username='$username'";
    mysql_query($query);
    $detailMsg=array(
    'id'=>$result['id'],
    'username'=>$result['username'],
    'truename'=>$result['truename'],
    'password'=>$result['password']
    );
    }
    //return mysql_fetch_array($res,MYSQL_ASSOC);    
    return $detailMsg;
    }
    ?>调用文件
    <?
    include_once("function.php");$username="test";
    $truename="test";
    $email="[email protected]";
    $msg=SyncMember($username,$truename,$email);
    echo $msg;
    //结果输出的是ARRAY,我换成$msg['password']或$msg[0],结果为空?我该怎样取出return的array值呢?
    ?>
    建了表,看了下,你的这个写法没错啊
    echo $msg['password'];
    echo $msg['truename'];
    ....都有输出,会不会是你的字段刚好没有值???