代码如下:
<?php
  session_start();
  if($_SERVER['REQUEST_METHOD'] != "POST") exit('请填写表单');
  $_SESSION['userid']=$_POST['userid'];
  $title="注册完成";
  require_once("reghead.php");
  $userid=$_POST["userid"];
  $cardno=$_POST["cardno"];
  $cash=$_POST["cash"];
  $username=$_POST["username"];
  $password=$_POST["password"];
  $email=$_POST["email"];
  $addr=$_POST["addr"];
  $post=$_POST["post"];
  $phone=$_POST["phone"];
  include("sys_conf.inc");
  $connection=mysql_connect($DBHOST,$DBUSER,$DBPWD) or die("无法连接数据库!");
   mysql_query("set names='utf8'");
   mysql_select_db("member") or die("无法选择数据库!");
   $query="SELECT * FROM userinfo WHERE userid='$userid'";
   $result=mysql_query($query,$connection) or die ("浏览失败! 1");  
   if($row=mysql_fetch_array($result)){
   $msg="该会员id已经被人使用,请重新填写";
   echo "<meta http-equiv='Refresh' content='0;url=applysrc.php?msg=$msg'>";
   }  //建立会员id和购物卡号的联系
   if($cardno!=""){
   $query="INSERT INTO usercard (userid,cardno) VALUES ('$userid','$cardno')";
   $result=@mysql_query($query,$connection) or die("存入数据库失败!");  //修改卡号状态
   $query="UPDATE card SET cardstatus='N' WHERE cardno='$cardno'";
   $result=@mysql_query($query,$connection) or die("存入数据库失败!");
}   //建立新会员身份
   $time=Date("Y")."年".Date("n")."月".Date("j")."日".Date("G").":".Date("i");
   $query="INSERT INTO userinfo(userid,username,password,email,address,post,phone,createtime)";
   $query.="VALUES('$userid','$username','$password','$email','$addr','$post','$phone','$time')";
   $result=@mysql_query($query,$connection) or die("存入数据库失败!");
   mysql_close($connection) or die("关闭数据库失败!");  //反馈申请成功信息
   $msg="您的会员名为:".$userid."<br/>";
   if($cardno!=""){
   $msg.="购书卡号:".$cardno."<br/>";
   $msg.="可用金额:".$cash;
   }
?>
<link href="CSS/register.css" rel="stylesheet" type="text/css" />  <div id="err">注册购书卡|填写会员信息|完成</div>
  <div id="bt">恭喜您已经完成所有申请手续<hr/></div>
  <div id="bd" class="td1" align="center"><?php echo $msg; ?></div>
  <hr/>
  <iframe scrolling="no" width="780" height="60" src="regbottom.html" marginwidth="0" marginheight="0" frameborder="0" align="middle">不支持</iframe>
   </div>
  </body>
 </html>

错误显示:璇峰~鍐欒〃鍗
为什么会有乱码,是程序问题还是哪里设置有问题?    

解决方案 »

  1.   

    怎么解决呢?我明明把编码调成一样的呀,都用的utf8
      

  2.   

    在页面的开头加上这一句试一下<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <?php
      session_start();
      if($_SERVER['REQUEST_METHOD'] != "POST") exit('请填写表单');
      $_SESSION['userid']=$_POST['userid'];
      $title="注册完成";
      require_once("reghead.php");
      $userid=$_POST["userid"];
      $cardno=$_POST["cardno"];
      $cash=$_POST["cash"];
      $username=$_POST["username"];
      $password=$_POST["password"];
      $email=$_POST["email"];
      $addr=$_POST["addr"];
      $post=$_POST["post"];
      $phone=$_POST["phone"];
      include("sys_conf.inc");
      $connection=mysql_connect($DBHOST,$DBUSER,$DBPWD) or die("无法连接数据库!");
    mysql_query("set names='utf8'");
    mysql_select_db("member") or die("无法选择数据库!");
    $query="SELECT * FROM userinfo WHERE userid='$userid'";
    $result=mysql_query($query,$connection) or die ("浏览失败! 1");   
    if($row=mysql_fetch_array($result)){
    $msg="该会员id已经被人使用,请重新填写";
    echo "<meta http-equiv='Refresh' content='0;url=applysrc.php?msg=$msg'>";
    } //建立会员id和购物卡号的联系
    if($cardno!=""){
    $query="INSERT INTO usercard (userid,cardno) VALUES ('$userid','$cardno')";
    $result=@mysql_query($query,$connection) or die("存入数据库失败!"); //修改卡号状态
    $query="UPDATE card SET cardstatus='N' WHERE cardno='$cardno'";
    $result=@mysql_query($query,$connection) or die("存入数据库失败!");
    } //建立新会员身份
    $time=Date("Y")."年".Date("n")."月".Date("j")."日".Date("G").":".Date("i");
    $query="INSERT INTO userinfo(userid,username,password,email,address,post,phone,createtime)";
    $query.="VALUES('$userid','$username','$password','$email','$addr','$post','$phone','$time')";
    $result=@mysql_query($query,$connection) or die("存入数据库失败!");
    mysql_close($connection) or die("关闭数据库失败!"); //反馈申请成功信息
    $msg="您的会员名为:".$userid."<br/>";
    if($cardno!=""){
    $msg.="购书卡号:".$cardno."<br/>";
    $msg.="可用金额:".$cash;
    }
    ?>
    <link href="CSS/register.css" rel="stylesheet" type="text/css" />  <div id="err">注册购书卡|填写会员信息|完成</div>
      <div id="bt">恭喜您已经完成所有申请手续<hr/></div>
      <div id="bd" class="td1" align="center"><?php echo $msg; ?></div>
      <hr/>
      <iframe scrolling="no" width="780" height="60" src="regbottom.html" marginwidth="0" marginheight="0" frameborder="0" align="middle">不支持</iframe>
      </div>
      </body>
     </html>
      

  3.   

    meta怎可以写在session_start前面呢?
      

  4.   

    你的body开始标记在哪里????
      

  5.   


    不得不承认我没做好(那天为了拿分数,没具体看代码),不想误人子弟!错误的原因是:在session_start之前,是不能向浏览器输出过任何内容!不然会报错!
    所以一般session_start都在第一行,所以标准代码应该是
    <?php
      session_start();
      if($_SERVER['REQUEST_METHOD'] != "POST") exit('请填写表单');
      $_SESSION['userid']=$_POST['userid'];
      $title="注册完成";
      require_once("reghead.php");
      $userid=$_POST["userid"];
      $cardno=$_POST["cardno"];
      $cash=$_POST["cash"];
      $username=$_POST["username"];
      $password=$_POST["password"];
      $email=$_POST["email"];
      $addr=$_POST["addr"];
      $post=$_POST["post"];
      $phone=$_POST["phone"];
      include("sys_conf.inc");
      $connection=mysql_connect($DBHOST,$DBUSER,$DBPWD) or die("无法连接数据库!");
    mysql_query("set names='utf8'");
    mysql_select_db("member") or die("无法选择数据库!");
    $query="SELECT * FROM userinfo WHERE userid='$userid'";
    $result=mysql_query($query,$connection) or die ("浏览失败! 1");   
    if($row=mysql_fetch_array($result)){
    $msg="该会员id已经被人使用,请重新填写";
    echo "<meta http-equiv='Refresh' content='0;url=applysrc.php?msg=$msg'>";
    } //建立会员id和购物卡号的联系
    if($cardno!=""){
    $query="INSERT INTO usercard (userid,cardno) VALUES ('$userid','$cardno')";
    $result=@mysql_query($query,$connection) or die("存入数据库失败!"); //修改卡号状态
    $query="UPDATE card SET cardstatus='N' WHERE cardno='$cardno'";
    $result=@mysql_query($query,$connection) or die("存入数据库失败!");
    } //建立新会员身份
    $time=Date("Y")."年".Date("n")."月".Date("j")."日".Date("G").":".Date("i");
    $query="INSERT INTO userinfo(userid,username,password,email,address,post,phone,createtime)";
    $query.="VALUES('$userid','$username','$password','$email','$addr','$post','$phone','$time')";
    $result=@mysql_query($query,$connection) or die("存入数据库失败!");
    mysql_close($connection) or die("关闭数据库失败!"); //反馈申请成功信息
    $msg="您的会员名为:".$userid."<br/>";
    if($cardno!=""){
    $msg.="购书卡号:".$cardno."<br/>";
    $msg.="可用金额:".$cash;
    }
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />//加在这里比较好
    <link href="CSS/register.css" rel="stylesheet" type="text/css" />
    <div id="err">注册购书卡|填写会员信息|完成</div>
      <div id="bt">恭喜您已经完成所有申请手续<hr/></div>
      <div id="bd" class="td1" align="center"><?php echo $msg; ?></div>
      <hr/>
      <iframe scrolling="no" width="780" height="60" src="regbottom.html" marginwidth="0" marginheight="0" frameborder="0" align="middle">不支持</iframe>
      </div>
      </body>
     </html>