session_start(); 之前不能有echo

解决方案 »

  1.   

    session 是通过头文件发送的~~~应该放在任何输出语句的前面~~~也就是它必须是第一个输出语句~~~因此~~错误的原因出在  echo 的语句上~~把那句放到下面来就对了 
      

  2.   

    Session是一个封装后的cookie,应该在网页还没有输出前先输出。能让PHP给我们生成一个Head!形如:
    content-type text/html\n
    set-cookie:name=value;expires=date\n\n
    当然还可以通过设定PHP.ini的
    output_buffering = On
    来解决!
      

  3.   

    session_start()之前,不能有任何信息在客户端输出要将这个东东放在最前面哦!:)
      

  4.   

    上者所说的我试过了
    还是出现
    Warning: open(/tmp\sess_80cf603c57fde3284df8aaa6a4e78f5b, O_RDWR) failed: m (2) in Unknown on line 0Warning: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0
      

  5.   

    有没有在你运行php的那个分区的根目录建立/tmp这个目录
      

  6.   

    对,yorgo(羽高) 说的那个目录没有建,找不到系统的session
      

  7.   

    修改php.ini文件的session的tmp的路径,设置为session.save_path = /tmp
    确定你linux下有这个文件夹
    如果是windows下的php,随便设置一个存在的文件夹就可以了session.save_path =c:\temp
    ps:header以及session开始前不能对浏览器进行输出(echo等)
      

  8.   

    我试过好多遍了,好象是如果有两个调用函数的输出,同时在页面上显示的话就会有你说的error!
      

  9.   

    可以在session_start()前加上@似乎可以屏蔽该错误的产生:@session_start(); 
      

  10.   

    to sunqj:
      哦,是吗?我怎么好像不行呢!
      

  11.   

    to kittywu:
    我也是新手,再有什么我就不清楚了
      

  12.   

    注意,把这段代码放到<html>以前,就可以了!
    简单的回答,十分有效!