Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Połączenie ze soba 2 stron z else
Forum PHP.pl > Forum > Przedszkole
Remx
Witam
postanowilem zabezpieczyc sobie stronki tak aby bez zalogowania nie udalo sie ich odpalic. skrypcik działa ale jak mam zamiar zrobic wiecej podstronek to wklejanie na kzdej z nich owego skryptu spowodowalo by ze po jakims czasie cala strona zajmowala 2-3x wiecej bo same zabespieczenie zajmuje 1/3 smile.gif

Wiec postanowilem zrobic plik session.php ktory odpowiada za te bezpieczenstwo.
i mam cos takiego:

session.php

  1. <?php
  2.  
  3.  
  4. if(.........) {
  5. .....................
  6. ..................... // sprawdza czy jestes zalogowany czyli sprawdza $_session
  7. ..................... // czy id session jest takie same jak w cookie oraz sprawdza login 
  8. ..................... // i jezeli login i id $_session['id'] $_session['login'] są równe z
  9. ................... // $_cookie['session_id'] oraz $_cookie['session_login'] to 
  10. ................... // wyswietla sie to co jest w za elese w innym przypadku 
  11. .................... // wysietalny jest kod ten co jest za if_em.
  12. ...................
  13.  }
  14. else
  15. ?>



strona.php

  1. <?php
  2. require "session.php"; 
  3. {
  4. ?>
  5. <html>
  6. ...............................................
  7. ........ STRONA WŁAŚCIWA .......
  8. ................................................
  9. </html>
  10. <?php
  11. }
  12. ?>



i oczywiscie niby to dziala tylko ze kod nie widzi polecenia else sad.gif
jak jest to wszystko w 1 pliku jest ok ale jak podziele tak jak wyzej
to po zakonczeniu session (cookie umiera) wyswietla sie text za if-a o komunikacie ze trzeba sie zalogowac ale dodatkowo pod spodem wyswietla wszystko za else tak jagby nie widzial skrypt ze tu jest jeszcze else i nie mozna tego ponizej wyswietlac :/

czy jest jakas rada na takie cos ?

Pozdrawiam
pEbE
po cholere Ci te klamry?
Remx
te klamry w pliku strona.php

aby to wygladalo w rezultacie tak

if(..)
{
wyswietla session.php
}
else
{
wyswietla strona.php
}

bez tych klamerek to samo jest
wiec o co ci chodzi ?

**************
edit:
*******

na chwile obecna zrobilem cos takiego
ze w session.php na koncu dopisalem

else
{
$check='1';
}

a do strona.php

if($check=='1')
{
.....

i narazie działa smile.gif ale moze jest lepsze rozwiazanie tego ?

Pozdrawiam
Dex1987
zrobiles cos takiego
  1. <?php
  2. } else require "session.php"; {
  3.  
  4. // ...
  5. ?>
popraw to na
  1. <?php
  2. } else { require "session.php"; 
  3.  
  4. // ...
  5. ?>
Levabul
@DexTo nic nie da ponieważ on musi załączyć plik 'session.php' przed klamrami (session.php to ten pierwszy plik).

Osobiście uważam że takie rozwiązanie jest co najmniej dziwne ...
Dex1987
sory nie patrzylem na ten kod dokladnie, poprostu rzucilo mi sie to w oczy, a pisalo ze cos nie tak z else wiec napisalem to co napisalem.

@Remx nie wiem co masz w session.php ale nie lepiej by bylo zrobic

  1. <?php
  2.  
  3. if (empty ($_SESSION['nazwa'])) { // oczywiscie tu warunek jaki chcesz
  4.  
  5. // tu jakis tekst jesli nie zalogowany, albo jesli kazda strona dla niezalogowaneg
    o usera jest taka sama to include ('nie_zalogowany.html') (czy jaka Ci tam pasuje) i nie bedziesz mial 2 - 3x wiecej kodu
  6.  
  7. } else {
  8.  
  9.  // tu wlasciwa tresc strony
  10. }
  11. ?>
Remx
ja mam tak

if (...){
...................
ZALOGUJ SIE
...................
}
else{

i tu kod własciwy smile.gif

ale odzielilem kod sprawdzajacy logowanie bo on zajmuje okolo 30 linijek smile.gif
}

i dziala tak jak napisalem wyzej smile.gif
i jest ok 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.