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.. (IMG:http://forum.php.pl/style_emoticons/default/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..? (IMG:http://forum.php.pl/style_emoticons/default/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! (IMG:http://forum.php.pl/style_emoticons/default/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
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.08.2025 - 10:04