Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]$_GET niczy mi sesje logowania
neotorrent
post 14.08.2011, 22:33:47
Post #1





Grupa: Zarejestrowani
Postów: 39
Pomógł: 0
Dołączył: 14.08.2011

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


Witam
Otóż mam taki problem
Pisze mały Panel administracyjny w PHP i mam problem bo gdy wysyłam coś $_GET'em niszczy mi sesje logowania

Podaje na konkretnym przykładzie:

Plik: index2.php
  1. <?php
  2. include 'auth.php';
  3.  
  4. if ($_SESSION["zalogowany"]=="tak")
  5. {
  6. >
  7. <div id="menuleft">
  8. <img src="img/menu.png" border="0px" />
  9. <div id="menutlo">
  10. <?php include 'menu.php'; ?>
  11. </div>
  12. </div>
  13. <div id="mright">
  14. <div id="menutlor">
  15. <?php include 'srodek.php'; ?>
  16. </div>
  17. </div>
  18. <?php
  19. }
  20. else {
  21. ?>
  22. <form method="post" action="index2.php" style="padding-left: 350px; padding-top: 150px;">
  23. <p1>Login:</p1> <input type="text" name="login" class="loginput" value="Wpisz login..." onfocus="if(this.value=='' || this.value == 'Wpisz login...') this.value=''" onblur="if(this.value == '') {this.value=this.defaultValue}" onkeyup="keyUp();"><br>
  24. <p1>Hasło:</p1> <input type="password" name="haslo" class="loginput1" value="Wpisz hasło..." onfocus="if(this.value=='' || this.value == 'Wpisz hasło...') this.value=''" onblur="if(this.value == '') {this.value=this.defaultValue}" onkeyup="keyUp();"><br>
  25. <input type="image" src="img/loguj.png" onClick="this.form.submit();" class="loguj" />
  26. </form>
  27. <?php
  28. }
  29. ?>


Plik: auth.php
  1. <?
  2. require('functions.php');
  3. connect();
  4. $mysql_tabela = "dcp_admin";
  5.  
  6. // **************************************************
  7. // ********** wylogowanie i zalogowanie z ustaleniem sesji...
  8. // **************************************************
  9.  
  10. $login = $_POST["login"];
  11. $haslo = $_POST["haslo"];
  12.  
  13. if ($_GET["login"]=="koniec") { // wylogowanie
  14. } else if ($login<>"" and $haslo<>"") {
  15. $haslo = md5($haslo);
  16. $wynik=mysql_query("SELECT * FROM $mysql_tabela WHERE
  17. login='$login' and haslo='$haslo'");
  18. if (mysql_num_rows($wynik)==1) {
  19. $dane=mysql_fetch_array($wynik);
  20. $_SESSION["zalogowany"]="tak";
  21. $_SESSION["login"]=$dane["login"];
  22.  
  23.  
  24. }
  25. }
  26. ?>


Plik index.php
  1. <?
  2.  
  3. ?>
  4.  
  5. <form method="post" action="index2.php" style="padding-left: 420px; padding-top: 379px;">
  6. <input type="text" name="login" class="loginput" value="Wpisz login..." onfocus="if(this.value=='' || this.value == 'Wpisz login...') this.value=''" onblur="if(this.value == '') {this.value=this.defaultValue}" onkeyup="keyUp();"><br>
  7. <input type="password" name="haslo" class="loginput1" value="Wpisz hasło..." onfocus="if(this.value=='' || this.value == 'Wpisz hasło...') this.value=''" onblur="if(this.value == '') {this.value=this.defaultValue}" onkeyup="keyUp();"><br>
  8. <input type="image" src="img/loguj.png" onClick="this.form.submit();" class="loguj" />
  9. </form>


Plik menu.php
  1. <div id="menutloin">
  2. Dodaj Artykuł</br>
  3. </br>
  4. <img src="img/spacer.png" /></br>
  5. </br>
  6. <a href="index2.php?msg=addphoto">Dodaj Zdjęcie</a></br>
  7. </div>


Plik srodek.php
  1. <?php
  2.  
  3. if ($_GET[msg] =="addphoto"){
  4. include "addphoto.php";
  5. }
  6. else if ($_GET[msg]==""){
  7. include "start.php";
  8. }
  9.  
  10. ?>


Plik index.php to formularz do zalogowania się , index2.php to wnętrze panelu, auth.php to plik pobierający dane z bazy i ustalający sesje (w przypadku poprawnych danych daje zalogowany == tak ) menu.php to plik z bocznym panelem przycisków , a plik środek to miejsce wyświetlania się odpowiednich informacji.

Problem polega na Tym że po zalogowaniu i wciśnięciu odnośnika dodaj zdjęcie pokazuje mi się formularz logowania. Dlatego że zmienna GET wysyła nowe dane ( w index2.php jest else { formularz } ). Jak to obejść ? żeby po wysłaniu geta nadal sesja się trzymała ?
Z góry dziękuje za pomoc

Ten post edytował neotorrent 14.08.2011, 22:40:41
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
konole
post 15.08.2011, 08:10:56
Post #2





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 21.03.2006
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Dodaj na początku index2.php

Kod
session_start();
Go to the top of the page
+Quote Post
neotorrent
post 15.08.2011, 09:00:26
Post #3





Grupa: Zarejestrowani
Postów: 39
Pomógł: 0
Dołączył: 14.08.2011

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


Dałem na początku auth.php który jest zaincludowany do index2.php więc chyba jest dobrze . A nie chodzi sad.gif
Go to the top of the page
+Quote Post

Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 10:01