Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL]problem z baza i skryptem
bus30
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 3.01.2009
Skąd: dark space..

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


Witam!

Napisalem taki skrypt tworzacy przykladowa baze danych 'users':

Kod
<?php
        $w = mysql_connect('localhost','root','*******') or die('Nie mozna nawiazac polaczenia.Sprobuj pozniej!');
        $a = mysql_query('create database users') or die('Serwer nie odpowiada.Sprobuj pozniej');
        $b = mysql_select_db('users') or die('Padla baza');
        $c = mysql_query('create table uzytkownicy(id int auto_increment, login varchar(30), haslo varchar(20), primary key(id))');
        $zapytanie1 = mysql_query("insert into uzytkownicy values(null,'Admin','xyz123')");
        $zapytanie2 = mysql_query("insert into uzytkownicy values(null,'John','asd456')");
        $zapytanie3 = mysql_query("insert into uzytkownicy values(null,'Anna','ddd555')");
  
       ?>


Dziala bez zarzutu..Nastepnie stworzylem prosta strone logowania:

Kod
<?php
       session_start();
  
        $Loguj = $_POST["Loguj"];
        if(isset($Loguj)) {
  
        $login = $_POST["login"];
        $haslo = $_POST["haslo"];
  
        $host = "localhost";
        $db_user = "root";
        $db_password = "*******";
        $database = "users";
  
        
  
       $pol = mysql_connect($host,$db_user,$db_password);
         if (!$pol) {
           echo "Nie mozna sie polaczyc z baza danych!";
           exit;
         }
       $wyb = mysql_select_db($database);
         if (!$wyb) {
           echo "Nie mozna wybrac bazy danych!";
           exit;
         }
       $pol = mysql_query("select * from uzytkownicy where login = '$login' and haslo = '$haslo'") or die("Nie mozna wejsc do bazy");
        if(@mysql_num_rows($pol) && $login=="Admin"){
           session_register("login");
           header("location:admin.php");
           exit;
         }
           elseif(@mysql_num_rows($pol) && $login!="Admin") {
           session_register("login");
           header("location:user.php");
         } else {
            echo "Nieprawidlowy login lub haslo!";
         }
       }
       ?>
       <?php
        echo "<p><h1>Witaj na stronie: KSIAZKA ADRESOWA :))</h1></p>";
        echo "<p><h5>Musisz sie zalogowac:</h5></p>";
        echo "<form action=\"logowanie.php\" method=\"post\">";
        echo "
       ";
        echo "LOGIN:"."<input type=\"text\" name=\"login\">";
        echo "
       ";
        echo "HASLO:"."<input type=\"password\" name=\"haslo\">";
        echo "
       ";
        echo "<input type=\"submit\" name=\"Loguj\" value=\"Loguj\">";
        echo "<input type=\"reset\" value=\"Wyczysc\">";
        echo "</form>";
       ?>


problem polega na tym,ze myslalem ,ze wszystko jest ok..Niestety,kiedy probowalem sie zalogowac na login 'John' ..to przekierowuje mnie do pliku user.php,ale w powitaniu pojawia sie user Anna,a nie John?..dlaczego?
Gdzie jest blad?..Moze ktos mi wskaze rozwiazanie.. sadsmiley02.gif .Dodam jeszcze ,ze jak loguje sie na Admin,to dziala poprawnie i wyswietla mi zawartosc pliku admin.php

plik user.php :

Kod
<?php
       session_start();
         if(!session_is_registered("login")){
         header("location:logowanie.php");
       }
       ?>
       <head>
       <title>Dokument</title>
       </head>
       <body>
       <p>Witaj <? echo $_SESSION["login"]; ?>! Jestes zalogowanym uzytkownikiem :).</p>
       <p><a href="logowanie.php">Wyloguj</a></p>
       </body>
       </html>

Go to the top of the page
+Quote Post
drake88
post
Post #2





Grupa: Zarejestrowani
Postów: 283
Pomógł: 15
Dołączył: 22.03.2009
Skąd: Bytów

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


Nie próbowałeś wcześniej logować się na usera Anna, a potem może się nie wylogowałeś?


--------------------
Go to the top of the page
+Quote Post
bus30
post
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 3.01.2009
Skąd: dark space..

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


Tak.Logowalem sie wczesniej na uzytkownika 'Anna' i dopiero jak wyczyscilem dane prywatne w przegladarce,moglem sie zalogowac na uzytkownika 'John'.To znaczy wyswietlilo mi sie 'Witaj John!'
Ten skrypt nie jest dobry,ale narazie nie wiem jak go zmienic..? sadsmiley02.gif
Go to the top of the page
+Quote Post
DevonSix
post
Post #4





Grupa: Zarejestrowani
Postów: 10
Pomógł: 1
Dołączył: 12.04.2009

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


Daj wylogowywanie, tzn. session_destroy();
Go to the top of the page
+Quote Post
bus30
post
Post #5





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 3.01.2009
Skąd: dark space..

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


Pomoglo! smile.gif Dzieki!
Zrobilem tak:

Kod
<p><a href="logowanie.php"><? session_destroy();?>Wyloguj</a></p>
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 08:21