Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Sesje nie działają mimo ob_start()
Forum PHP.pl > Forum > Przedszkole
PiiiT
Witam, nie mogę poradzić sobie z tym komunikatem Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /.............../menu.php:1) in /.................../menu.php on line 3.
1

Wiem że dużo tematów zostało zamkniętych ponieważ było to omawiane nie jednokrotnie, niemniej jednak posty w których były zawarte jakiekolwiek informacje na temat tego błędu nie pomogły mi, wstawienie ob_start(); też nie. Zmienna z sesji przekazywana jest poprawnie ale nie mogę pozbyć się tego błędu. Poniżej zamieszczam kod który odbiera zmienną z panelu logowania menu.php:

  1. ob_start();
  2. session_start();
  3. session_register("zalogowany");
  4. echo ($_SESSION["zalogowany"]);
  5. ?>
  6.  
  7. <!DOCTYPE html 
  8. PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  9. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  10. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  11.  
  12. <head>
  13. <title>Panel administracyjny</title>
  14. </head>
  15. <body bgcolor="#ececec">
  16. <table align = "center" cellpadding="5">
  17. <tr><td>
  18. <FORM>
  19. <tr><td align="center" colspan="4"><img src="/marek/logo.png" alt="logo"></td></tr>
  20. <tr><td colspan=4 align="center" bgcolor="#2c9dd9"><b>PANEL ADMINISTRACYJNY</b></td></tr>
  21. <tr align="center" bgcolor="#2c9dd9">
  22. <td><INPUT TYPE="BUTTON" VALUE="Dodaj klienta " ONCLICK="window.location.href='dodaj_k.php'"></td>
  23. <td><INPUT TYPE="BUTTON" VALUE="Edytuj klienta" ONCLICK="window.location.href='edycja_k.php'"></td>
  24. <td><INPUT TYPE="BUTTON" VALUE="Usuń klienta " ONCLICK="window.location.href='usun_k.php'"></td>
  25. <td><INPUT TYPE="BUTTON" VALUE="Lista klientów" ONCLICK="window.location.href='pokaz_k.php'"></td>
  26. </tr>
  27. <tr align="center" bgcolor="#2c9dd9">
  28. <td><INPUT TYPE="BUTTON" VALUE="Dodaj nadajnik " ONCLICK="window.location.href='dodaj_n.php'"></td>
  29. <td><INPUT TYPE="BUTTON" VALUE="Edytuj nadajnik " ONCLICK="window.location.href='edycja_n.php'"></td>
  30. <td><INPUT TYPE="BUTTON" VALUE="Usuń nadajnik  " ONCLICK="window.location.href='usun_n.php'"></td>
  31. <td><INPUT TYPE="BUTTON" VALUE="Lista nadajników" ONCLICK="window.location.href='obsluga.php'"></td>
  32. </tr>
  33. <tr align="center" bgcolor="#2c9dd9">
  34. <td><INPUT TYPE="BUTTON" VALUE="Podsumowanie" ONCLICK="window.location.href='suma.php'"></td>
  35. <td><INPUT TYPE="BUTTON" VALUE="Użytkownicy" ONCLICK="window.location.href='panelu.php'"></td>
  36. <td><INPUT TYPE="BUTTON" VALUE="Wróć do menu" ONCLICK="window.location.href='panel.php'"></td>
  37. <td><INPUT TYPE="BUTTON" VALUE="Wyloguj  " ONCLICK="window.location.href='index.php?wyloguj=tak'"></td>
  38. </tr>
  39. </FORM>
  40. </td></tr>
  41. </table>
  42. </body>
  43. </html>
  44. <?php ob_end_flush();


index.php:
  1. <?php
  2. session_register("zalogowany");
  3.  
  4. if(empty($_SESSION["zalogowany"]))$_SESSION["zalogowany"]=0;
  5. echo ($_SESSION["zalogowany"]);
  6. include 'conf.php';
  7.  
  8. function ShowLogin($komunikat=""){
  9. echo "$komunikat<br>";
  10. echo "<Table border = 0 rules=void align=center cellpadding=5 bgcolor=#96d2f2>";
  11. echo "<form action='index.php' method=post>";
  12. echo "<td colspan=3 bgcolor=#ececec align=center><img src=/marek/logo.png alt=logo></td></tr>";
  13. echo "<td colspan=3 bgcolor=#96d2f2 align=center><strong>Panel logowania</strong> </td></tr>";
  14. echo "<tr><td width=\"40%\" style=\"text-align: right\"><b>Login: </b></td><td><input type=text name=login></td></tr><br>";
  15. echo "<tr><td width=\"40%\" style=\"text-align: right\"><b>Hasło: </b></td><td><input type=password name=haslo></td></tr><br>";
  16. echo "<tr><td colspan=2 align=center><input type=submit value='Zaloguj!'></td></tr>";
  17. echo "</form>";
  18. echo "</Table>";
  19.  
  20. }
  21.  
  22. ?>
  23. <!DOCTYPE html
  24. PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  25. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  26. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  27. <head>
  28. <title>Strona logowania</title>
  29. </head>
  30. <body bgcolor="#ececec">
  31.  
  32. <table>
  33. <tr>
  34. <?php
  35. if($_GET["wyloguj"]=="tak"){$_SESSION["zalogowany"]=0;echo "<meta http-equiv=\"refresh\" content=\"0;URL=index.php\">";}
  36. if($_SESSION["zalogowany"]!=1){
  37. if(!empty($_POST["login"]) && !empty($_POST["haslo"])){
  38. if(mysql_num_rows(mysql_query("select * from user where login = '".htmlspecialchars($_POST["login"])."' AND pass = '".htmlspecialchars($_POST["haslo"])."'"))){
  39. echo "<meta http-equiv=\"refresh\" content=\"0;URL=menu.php\">";
  40. $_SESSION["zalogowany"]=1;
  41. }
  42. else echo ShowLogin("Podano złe dane!!!");
  43. }
  44. else ShowLogin();
  45. }
  46. else{
  47.  
  48.  
  49. }
  50. ?>
  51. </tr>
  52. </table>
  53. </body>
  54. </html>
  55. <?php mysql_close(); 
bogdan89
session_register" title="Zobacz w manualu PHP" target="_manual
takiej funkcji nie powinno się już używać, jest to stara funkcja...
nie jest już potrzebna, będzie dobrze i bez niej winksmiley.jpg
PiiiT
z nią czy bez niej komunikat pozostaje bez zmian sad.gif
webdice
Było, było, było. Podpowiedź: BOM.

Zamykam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.