<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML ><HEAD ><TITLE >session_start</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK REL="HOME" TITLE="Manual PHP" HREF="index.html"><LINK REL="UP" TITLE="Session Handling Functions" HREF="ref.session.html"><LINK REL="PREVIOUS" TITLE="session_set_save_handler" HREF="function.session-set-save-handler.html"><LINK REL="NEXT" TITLE="session_unregister" HREF="function.session-unregister.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=ISO-8859-2"></HEAD ><BODY CLASS="refentry" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >Manual PHP</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="function.session-set-save-handler.html" ACCESSKEY="P" >Înapoi</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.session-unregister.html" ACCESSKEY="N" >Înainte</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="function.session-start" ></A >session_start</H1 ><DIV CLASS="refnamediv" ><A NAME="AEN103460" ></A ><P > (PHP 4 , PHP 5)</P >session_start -- Initialize session data</DIV ><DIV CLASS="refsect1" ><A NAME="AEN103463" ></A ><H2 >Description</H2 >bool <B CLASS="methodname" >session_start</B > ( void )<BR ></BR ><P > <B CLASS="function" >session_start()</B > creates a session or resumes the current one based on the current session id that's being passed via a request, such as GET, POST, or a cookie. </P ><P > This function always returns <TT CLASS="constant" ><B >TRUE</B ></TT >. </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >Notã: </B > If you are using cookie-based sessions, you must call <B CLASS="function" >session_start()</B > before anything is outputted to the browser. </P ></BLOCKQUOTE ></DIV ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN103477" ></A ><P ><B >Exemplu 1. A session example: <TT CLASS="filename" >page1.php</TT ></B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <font color="#0000BB"><?php<br /></font><font color="#FF8000">// page1.php<br /><br /></font><font color="#0000BB">session_start</font><font color="#007700">();<br /><br />echo </font><font color="#DD0000">'Welcome to page #1'</font><font color="#007700">;<br /><br /></font><font color="#0000BB">$_SESSION</font><font color="#007700">[</font><font color="#DD0000">'favcolor'</font><font color="#007700">] = </font><font color="#DD0000">'green'</font><font color="#007700">;<br /></font><font color="#0000BB">$_SESSION</font><font color="#007700">[</font><font color="#DD0000">'animal'</font><font color="#007700">] = </font><font color="#DD0000">'cat'</font><font color="#007700">;<br /></font><font color="#0000BB">$_SESSION</font><font color="#007700">[</font><font color="#DD0000">'time'</font><font color="#007700">] = </font><font color="#0000BB">time</font><font color="#007700">();<br /><br /></font><font color="#FF8000">// Works if session cookie was accepted<br /></font><font color="#007700">echo </font><font color="#DD0000">'<br /><a href="page2.php">page 2</a>'</font><font color="#007700">;<br /><br /></font><font color="#FF8000">// Or maybe pass along the session id, if needed<br /></font><font color="#007700">echo </font><font color="#DD0000">'<br /><a href="page2.php?' </font><font color="#007700">. </font><font color="#0000BB">SID </font><font color="#007700">. </font><font color="#DD0000">'">page 2</a>'</font><font color="#007700">;<br /></font><font color="#0000BB">?></font> </font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ><P > After viewing <TT CLASS="filename" >page1.php</TT >, the second page <TT CLASS="filename" >page2.php</TT > will magically contain the session data. Read the <A HREF="ref.session.html" >session reference</A > for information on <A HREF="ref.session.html#session.idpassing" >propagating session ids</A > as it, for example, explains what the constant <TT CLASS="constant" ><B >SID</B ></TT > is all about. </P ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN103488" ></A ><P ><B >Exemplu 2. A session example: <TT CLASS="filename" >page2.php</TT ></B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <font color="#0000BB"><?php<br /></font><font color="#FF8000">// page2.php<br /><br /></font><font color="#0000BB">session_start</font><font color="#007700">();<br /><br />echo </font><font color="#DD0000">'Welcome to page #2<br />'</font><font color="#007700">;<br /><br />echo </font><font color="#0000BB">$_SESSION</font><font color="#007700">[</font><font color="#DD0000">'favcolor'</font><font color="#007700">]; </font><font color="#FF8000">// green<br /></font><font color="#007700">echo </font><font color="#0000BB">$_SESSION</font><font color="#007700">[</font><font color="#DD0000">'animal'</font><font color="#007700">]; </font><font color="#FF8000">// cat<br /></font><font color="#007700">echo </font><font color="#0000BB">date</font><font color="#007700">(</font><font color="#DD0000">'Y m d H:i:s'</font><font color="#007700">, </font><font color="#0000BB">$_SESSION</font><font color="#007700">[</font><font color="#DD0000">'time'</font><font color="#007700">]);<br /><br /></font><font color="#FF8000">// You may want to use SID here, like we did in page1.php<br /></font><font color="#007700">echo </font><font color="#DD0000">'<br /><a href="page1.php">page 1</a>'</font><font color="#007700">;<br /></font><font color="#0000BB">?></font> </font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ><P > If you want to use a named session, you must call <A HREF="function.session-name.html" ><B CLASS="function" >session_name()</B ></A > before calling <B CLASS="function" >session_start()</B >. </P ><P > <B CLASS="function" >session_start()</B > will register internal output handler for URL rewriting when <VAR CLASS="literal" >trans-sid</VAR > is enabled. If a user uses <VAR CLASS="literal" >ob_gzhandler</VAR > or like with <A HREF="function.ob-start.html" ><B CLASS="function" >ob_start()</B ></A >, the order of output handler is important for proper output. For example, user must register <VAR CLASS="literal" >ob_gzhandler</VAR > before session start. </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >Notã: </B > Use of <A HREF="ref.zlib.html#ini.zlib.output-compression" >zlib.output_compression</A > is recommended rather than <A HREF="function.ob-gzhandler.html" ><B CLASS="function" >ob_gzhandler()</B ></A > </P ></BLOCKQUOTE ></DIV ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >Notã: </B > As of PHP 4.3.3, calling <B CLASS="function" >session_start()</B > while the session has already been started will result in an error of level <TT CLASS="constant" ><B >E_NOTICE</B ></TT >. Also, the second session start will simply be ignored. </P ></BLOCKQUOTE ></DIV ><P > See also <A HREF="reserved.variables.html#reserved.variables.session" >$_SESSION</A >, <A HREF="ref.session.html#ini.session.auto-start" >session.auto_start</A >, and <A HREF="function.session-id.html" ><B CLASS="function" >session_id()</B ></A >. </P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="function.session-set-save-handler.html" ACCESSKEY="P" >Înapoi</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Acasã</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="function.session-unregister.html" ACCESSKEY="N" >Înainte</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >session_set_save_handler</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ref.session.html" ACCESSKEY="U" >Sus</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >session_unregister</TD ></TR ></TABLE ></DIV ></BODY ></HTML >