Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przesylanie zmiennej do kazdej kolejnej strony?
v1t4n
post
Post #1





Grupa: Zarejestrowani
Postów: 111
Pomógł: 16
Dołączył: 19.02.2005
Skąd: Dębica

Ostrzeżenie: (0%)
-----


Zrobilem cos w stylu konta admina (i to cos jest bardzo prymitywne). Zaczyna sie od logowania pozniej weryfikacja hasla:
  1. <?
  2. if($adminpass == "zaq12wsx")
  3. {
  4. include("admin/main.php");
  5. }
  6. else
  7. echo("<font color=red>Podane hasło administratora jest niepoprawne!!</font>");
  8. ?>

Haslo wysylane jest przez formularz
  1. <form action="?admin=mpage" method="post">
  2. Podaj hasło administratora:<BR>
  3. <input type="password" name="adminpass">
  4. <input type="submit" value="Dalej">
  5. </form>

Ale jest jeden problem... Gdy chce zeby calosc caly czas przechodzila przez weryfikacje hasla pojawia sie blad. Blad polega na tym ze formularz wysyla haslo tylko do strony glownej konta admina a dalej wygasa. Czy jest jakas metoda zeby strona przechowywala haslo az do wylogowania sie?
Zalezy mi na tym zeby nie mozna bylo wejsc na jakas podstrone konta admina bez zalogowania sie
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
yavaho
post
Post #2





Grupa: Zarejestrowani
Postów: 449
Pomógł: 0
Dołączył: 26.05.2004
Skąd: Nowy Sącz

Ostrzeżenie: (0%)
-----


Moze zaczniemy od podstaw (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) To co naskrobie ponizej bedzie bardzo prymitywne ale moze dzieki temu zrozumiesz zasade dzialania sesji.
Najpierw logowanie
  1. <?php
  2. if($_POST['haslo']=='twoje_haslo'){
  3. //zalogowany
  4. $_SESSION['admin']=1; //ustawienie zmiennej sesyjnej
  5. //wyswietlenie stron dostepnych dla admina
  6. //lub przekierowanie na inna strone
  7. }else{
  8. //brak dostepu
  9. }
  10. ?>
i teraz od momentu ustawienia zmiennej sesyjnej na kazdej stronie serwisu nalezy umiescic:
session_start();
Jezeli strona opiera sie o jeden plik index.php ktory includuje pozostale strony to nic prostrzego jak dac ten wpis w pierwszej linijce w pliku index.php

Na stronach dostepnych tylko dla admina trzeba zawsze sprawdzac czy istnieje sesja:
  1. <?php
  2. if(isset($_SESSION['admin'])){
  3. //wyswietlenie strony dostepnej dla admina
  4. }else{
  5. //tu mozna zrobic przekierowanie do strony z logowaniem lub do strony glownej
  6. }
  7. ?>


Albo np na kazdej stronie serwisu dostepnej normalnie dla wszystkich uzytkowikow mozna sprawdzic czy istnieje sesja i na podstawie tego wyswietlic menu dostepne tylko dla admina.
  1. <?php
  2. //tutaj jakies pozycje menu na stronie
  3. if(isset($_SESSION['admin'])){
  4. //a tutaj menu tylko dla admina
  5. }
  6. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 11:47