Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: session.auto_start = 1
Forum PHP.pl > Forum > PHP
kreteda
Czy można ustawić session.auto_start = 1 bez dostępu do php.ini ? i czy jest to bezpieczne
pawel81
  1. if (ini_get('session.auto_start') == 0)
  2. ini_set('session.auto_start', 1);
kreteda
Czy mam to wkleić na pocz±tku każdego pliku ? bo jak wklejam w index - nie działa, tak samo jak wklejam w skrypt logowania. wygl±da on tak





Kod
<?php
session_start();
session_register("zalogowany");
session_register("login");
$sizeinput=14;

if(empty($_SESSION["zalogowany"]))$_SESSION["zalogowany"]=0;
if(empty($_SESSION["login"]))$_SESSION["login"]="";
$terazurl=$_SERVER['REQUEST_URI'];
include('connection.php');

  mysql_select_db("przystan_1")or die("WystĂ??piı? bı?Ăquestionmark.gifd podczas wybierania bazy danych.");
  
  function ShowLogin ($komunikat=""){
  echo "<center><table><form action='$terazurl' method='post'>";
  echo "<tr><td>Login:</td><td> <input name='login' type='text' onMouseDown='value=&quot;&quot;' value='Login' size='$sizeinput'/></td></tr>";
  echo "<tr><td>Hası?o:</td><td><input name='haslo' type='password' onMouseDown='value=&quot;&quot;' value='1d3FG3' size='$sizeinput'></td></tr>";
  echo "<tr><td colspan='2'><center><input name='Zaloguj' type='submit' value='Zaloguj' /></center></td></tr></table>";
  echo "</form></center>";
  }
?>

<?php
$terazurl=$_SERVER['REQUEST_URI'];
$loginpost=$_POST["login"];
if($_GET["wyloguj"]=="tak")
{
$_SESSION["zalogowany"]=0;
$_SESSION["login"]="";

$adres3 = str_replace("login.php?wyloguj=tak","index.php",$terazurl);
echo "<meta http-equiv='Refresh' content='0;URL=$adres3'>";
echo "Zostaı?eı? wylogowany z serwisu";

}
if($_SESSION["Zalogowany"]!=1){
             if(!empty($_POST["login"]) && !empty($_POST["haslo"])){
                 if(mysql_num_rows(mysql_query("select * from users where user_login = '".htmlspecialchars($_POST["login"])."' AND user_haslo='".htmlspecialchars($_POST["haslo"])."'")))
                 {
                    

                    
                    
                     echo "<meta http-equiv='Refresh' content='0;URL=index.php'>";
                     $_SESSION["zalogowany"]=1;
                     $_SESSION["login"]="".htmlspecialchars($_POST["login"])."";

                     $godzina2=date("H:i:s");
                     $date2 =getdate();
                     $data2=("$date2[year]/$date2[mon]/$date2[mday]");
                     $dataigodzina="$data2 $godzina2";
                
                     mysql_query("UPDATE  `users` SET  `ost_data` =  '$dataigodzina' WHERE  `user_login` =  '$loginpost' LIMIT 1 ");
                     mysql_query("UPDATE  `users` SET  `ost_ip` =  '$REMOTE_ADDR' WHERE  `user_login` =  '$loginpost' LIMIT 1 ");
                 }
             else echo ShowLogin("Podano zı?y login lub hası?o.");
             }
        else ShowLogin();
}
else{
    ?>


   Zalogowany jako<?php $_POST["login"] ?> <a href='index.php?wyloguj=tak'>wyloguj</a>
   <?php
    }
    ?>
    <?php mysql_close();
         ?>


pawel81
Przeczytaj uwagi do session_register (usun te funkcje)
Musisz wstawic session_start na poczatku kazdego pliku ktory jest wywoływany (nie dodawany za pomoca include)
kreteda
co¶ mi nie korbi.

zmieniłem
session_register("zalogowany");
session_register("login");
na
$_SESSION["zalogowany"];
$_SESSION["login"];


i dalej logowanie mi nie działa :< link http://przystankersi.xaa.pl/baza/index.php
pawel81
Jak Ci to moze dzialac jezeli masz cos takiego include('login.php')

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  5. <title>Zaloguj się</title>
  6. <link href="style.css" rel="stylesheet" type="text/css" />
  7. </head>
  8.  
  9. <body class="twoColFixRtHdr">
  10.  
  11. <div id="container2">
  12. <div id="header2">
  13. <div class="left">
  14. <?php include('menuall.php'); ?></div>
  15.  
  16. <div class="central">
  17. <?php include('data.php'); ?>
  18. </div>
  19.  
  20. <div class="right">
  21. <?php include('login2.php'); ?></div>
  22. </div>
  23. <div id="header">
  24.  
  25.  
  26. <!-- end #header --></div>
  27.  
  28. <div id="header3"></div>
  29.  
  30. <div id="mainContent2">
  31. <div id="tresc2">
  32.  
  33. <h2>Zaloguj</h2> <br>
  34. <?php include('login.php'); ?>
  35.  
  36. </div>
  37.  
  38. </div>
  39. <div id="footer">
  40. <?php include('stopka.php'); ?>
  41. <!-- end #footer --></div>
  42. <!-- end #container --></div>
  43. </body>
  44. </html>


sesion_start musisz dodac w tym pliku a w tamtym usunac


---------------------------

  1. <?php
  2. session_start();
  3. ?>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  5. <html xmlns="http://www.w3.org/1999/xhtml">
  6. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  7. <title>Zaloguj się</title>
  8. <link href="style.css" rel="stylesheet" type="text/css" />
  9. </head>
  10.  
  11. <body class="twoColFixRtHdr">
  12.  
  13. <div id="container2">
  14. <div id="header2">
  15. <div class="left">
  16. <?php include('menuall.php'); ?></div>
  17.  
  18. <div class="central">
  19. <?php include('data.php'); ?>
  20. </div>
  21.  
  22. <div class="right">
  23. <?php include('login2.php'); ?></div>
  24. </div>
  25. <div id="header">
  26.  
  27.  
  28. <!-- end #header --></div>
  29.  
  30. <div id="header3"></div>
  31.  
  32. <div id="mainContent2">
  33. <div id="tresc2">
  34.  
  35. <h2>Zaloguj</h2> <br>
  36. <?php include('login.php'); ?>
  37.  
  38. </div>
  39.  
  40. </div>
  41. <div id="footer">
  42. <?php include('stopka.php'); ?>
  43. <!-- end #footer --></div>
  44. <!-- end #container --></div>
  45. </body>
  46. </html>


------------------------------------

  1. <?php
  2. $sizeinput=14;
  3.  
  4. if(empty($_SESSION["zalogowany"]))$_SESSION["zalogowany"]=0;
  5. if(empty($_SESSION["login"]))$_SESSION["login"]="";
  6. $terazurl=$_SERVER['REQUEST_URI'];
  7. include('connection.php');
  8.  
  9. mysql_select_db("baza")or die("WystĂ??piÄą? bÄą?Ăquestionmark.gifd podczas wybierania bazy danych.");
  10.  
  11. function ShowLogin ($komunikat=""){
  12. echo "<center><table><form action='$terazurl' method='post'>";
  13. echo "<tr><td>Login:</td><td> <input name='login' type='text' onMouseDown='value=&quot;&quot;' value='Login' size='$sizeinput'/></td></tr>";
  14. echo "<tr><td>HasÄą?o:</td><td><input name='haslo' type='password' onMouseDown='value=&quot;&quot;' value='1d3FG3' size='$sizeinput'></td></tr>";
  15. echo "<tr><td colspan='2'><center><input name='Zaloguj' type='submit' value='Zaloguj' /></center></td></tr></table>";
  16. echo "</form></center>";
  17. }
  18. ?>
  19.  
  20. <?php
  21. $terazurl=$_SERVER['REQUEST_URI'];
  22. $loginpost=$_POST["login"];
  23. if($_GET["wyloguj"]=="tak")
  24. {
  25. $_SESSION["zalogowany"]=0;
  26. $_SESSION["login"]="";
  27.  
  28. $adres3 = str_replace("login.php?wyloguj=tak","index.php",$terazurl);
  29. echo "<meta http-equiv='Refresh' content='0;URL=$adres3'>";
  30. echo "ZostaÄą?eÄą? wylogowany z serwisu";
  31.  
  32. }
  33. if($_SESSION["Zalogowany"]!=1){
  34. if(!empty($_POST["login"]) && !empty($_POST["haslo"])){
  35. if(mysql_num_rows(mysql_query("select * from users where user_login = '".htmlspecialchars($_POST["login"])."' AND user_haslo='".htmlspecialchars($_POST["haslo"])."'")))
  36. {
  37.  
  38.  
  39.  
  40.  
  41. echo "<meta http-equiv='Refresh' content='0;URL=index.php'>";
  42. $_SESSION["zalogowany"]=1;
  43. $_SESSION["login"]="".htmlspecialchars($_POST["login"])."";
  44.  
  45. $godzina2=date("H:i:s");
  46. $date2 =getdate();
  47. $data2=("$date2[year]/$date2[mon]/$date2[mday]");
  48. $dataigodzina="$data2 $godzina2";
  49.  
  50. mysql_query("UPDATE `users` SET `ost_data` = '$dataigodzina' WHERE `user_login` = '$loginpost' LIMIT 1 ");
  51. mysql_query("UPDATE `users` SET `ost_ip` = '$REMOTE_ADDR' WHERE `user_login` = '$loginpost' LIMIT 1 ");
  52. }
  53. else echo ShowLogin("Podano zÄą?y login lub hasÄą?o.");
  54. }
  55. else ShowLogin();
  56. }
  57. else{
  58. ?>
  59.  
  60.  
  61. Zalogowany jako<?php $_POST["login"] ?> <a href='index.php?wyloguj=tak'>wyloguj</a>
  62. <?php
  63. }
  64. ?>
  65. <?php mysql_close();
  66. ?>


w plikach ktore sa dodawane za pomaca inlude wywal session_start
Je¶li używasz sesji opartych o ciasteczka, to session_start() musi być wywołane przed wysłaniem jakichkolwiek danych do przegl±darki.
kreteda
działa, ogromne dzięki smile.gif
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.