[ Príspevkov: 7 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 01.01.09
Prihlásený: 22.06.11
Príspevky: 87
Témy: 25 | 25
NapísalOffline : 03.03.2011 14:12 | prihlasovanie, chyba, oop

Caute, mam takyto kod ( nizsie ) ktory ma bez problemov prihlasi, ak zadam zle meno a heslo, mal by vypisat hlasku 'Bad user or password', overuje sa to ce num_rows, co sa bezproblemov udeje ak zadam spravne udaje, avsak ked ma platit s nespavnymi udajmi != 1 tak nespravi nic, iba vypise bielu obrazovku...



User.Class.php
Kód:
<?php

/**
 * Description of User
 *
 * @author jan
 */
class User{

    public $logged;
    private $dbins;

    public function __construct(){

      $logged = isset($_SESSION['logged']) ? $_SESSION['logged'] : null;

      echo $this->logged = $logged;
       
        }

    public function login($db){

        $this->dbins = $db;

                    $user = $_POST['user'];

                    $passwd = $_POST['passwd'];
                   
                    if(!empty($user) && $passwd){
                        //echo "bum";
                        $passwd = md5($passwd);
                        //echo $passwd;
                        $result = $this->dbins->exQuery("SELECT * FROM users WHERE name='$user' AND passwd='$passwd'", 1);
                       
                        $num_rows = mysql_num_rows($result) or die(mysql_error());
                        echo "pocet riadkov:". $num_rows."<br>";
                        if($num_rows != 1){
                            //echo $num_rows;
                            //echo $_SESSION['logged'] = 1;
                           
                        echo "<div class='error'>Bad user or password</div>";

                            //echo "<div class='error'>Bad user or password</div>";
                            //$_SESSION['logged'] = 0;
                            }
                       
                        else{
                            $_SESSION['logged'] = 1;
                            echo "<div class='info'>Congratulations, you are now logged in.
                                  <a href='index.php'> Continue on main page</a></div>";
                           
                            }

                    }

                   
    }

    public function qLog(){
         if($this->logged != 1){

             header("Location: nolog.php");
           
             
            }

            else{

                echo "<div class='info'><a href='logout.php'>Logout</a></div>";

                }
    }

 
}
?>




Database.Class.php
Kód:
<?php

/**
 * Description of Database
 *
 * @author jan
 */

class Database {

    public $connection;
    public $database;
    public $qString = array();
    public $mquery;
    //public $collation;


//pripojenie, vyber databazy, nastavenie kodovania
public function __construct($db_server, $db_user, $db_passwd, $db_name, $collation){
   
    $this->connection = mysql_connect($db_server, $db_user, $db_passwd);

    if(!$this->connection){
        $this->mError();
        }

    $this->database = mysql_select_db($db_name);

    if(!$this->database){
        $this->mError();
        }

    $setCollation = $this->exQuery("SET NAMES $collation", 1);

    }

//vykonanie dopytu, pridanie do $qString pola pre debugovanie, ak je parameter dva == 1 => vykona realne query
public function exQuery($qString, $true){

    array_push($this->qString, htmlspecialchars($qString));

    if($true == 1){

        return $this->mquery = mysql_query($qString);

        if(!$this->mquery){
            $this->mError();
            }
        }
    }

//jednotny vypis chyb
public function mError(){
    echo "<div class='error'><span class='error'>ERROR: </span>". mysql_error() ."</div>";
    }

public function debugdb(){
    echo "<div class='error'><u>Queries:</u><br>";
    print_r(array_values($this->qString));
    echo "</div>";
}

//public function __destruct(){
//    $free = mysql_free_result($this->mquery);
//    $close = mysql_close($this->connection);
//}


}
?>


Offline

Skúsený užívateľ
Skúsený užívateľ
prihlasovanie, chyba, oop

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14691
Témy: 66 | 66
Bydlisko: Žilina
Vek: 30
NapísalOffline : 03.03.2011 14:15 | prihlasovanie, chyba, oop

Kód:
if($num_rows != 1)

prečo by num rows mala vracať -1? Je to počet získaných riadkov, čo pri žiadnom získanom riadku znamená výsledok 0, nie -1....


_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 01.01.09
Prihlásený: 22.06.11
Príspevky: 87
Témy: 25 | 25
Napísal autor témyOffline : 03.03.2011 14:22 | prihlasovanie, chyba, oop

ake -1 ?. != 1 predsa znemana ze vrati iny vysledok ako 1 teda 0 alebo v pripade nejakej zbeislej chyby 2 alebo ine...


Offline

Skúsený užívateľ
Skúsený užívateľ
prihlasovanie, chyba, oop

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14691
Témy: 66 | 66
Bydlisko: Žilina
Vek: 30
NapísalOffline : 03.03.2011 14:31 | prihlasovanie, chyba, oop

ah jo, sorry, to je tak, keď robím 10 vecí naraz :)

Kód:
if(!empty($user) && $passwd)

nemalo to byť skôr
Kód:
if (!empty($user) && !empty($passwd))

?
okrem toho, skús echovať každý krok, aby si vedel, cez ktorú podmienku vlastne kód neprejde


_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 01.01.09
Prihlásený: 22.06.11
Príspevky: 87
Témy: 25 | 25
Napísal autor témyOffline : 03.03.2011 14:36 | prihlasovanie, chyba, oop

v poho :) uf, ano malo byt, ale aj tak dostanem bielu obrazovku, nechapem preco. A nemam kde echovat, ani na uplnom zaciatku nic nenapise.


Offline

Skúsený užívateľ
Skúsený užívateľ
prihlasovanie, chyba, oop

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14691
Témy: 66 | 66
Bydlisko: Žilina
Vek: 30
NapísalOffline : 03.03.2011 14:43 | prihlasovanie, chyba, oop

ani na samotnom začiatku funkcie, nech si aspoň overíš či to má správne hodnoty? biela obrazovka, aspoň čo si spomínam kým som robil s php pred pár rokmi, by mohla znamenať, že sa vykonávanie skriptu zastavilo na nejakej chybe. nemáš zakázané vypisovanie errorov na serveri?


_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 01.01.09
Prihlásený: 22.06.11
Príspevky: 87
Témy: 25 | 25
Napísal autor témyOffline : 03.03.2011 14:52 | prihlasovanie, chyba, oop

vypisovanie mam povelene, E_ALL atd... a uz mam chybu aj ;) mysql_num_rows vrati nulu, a zatym mam or die(mysql_error()) :D


 [ Príspevkov: 7 ] 


prihlasovanie, chyba, oop



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

OOP

v PHP, ASP

20

969

29.02.2008 20:24

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

Prihlasovanie

v PHP, ASP

6

211

16.11.2011 14:51

susedx

V tomto fóre nie sú ďalšie neprečítané témy.

PRIHLASOVANIE

v PHP, ASP

11

407

12.09.2007 17:09

Tominator

V tomto fóre nie sú ďalšie neprečítané témy.

OOP, premenna

v PHP, ASP

1

432

26.10.2009 21:44

rooobertek

V tomto fóre nie sú ďalšie neprečítané témy.

OOP PHP

v PHP, ASP

1

312

29.04.2010 17:32

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

OOP kniha

v Assembler, C, C++, Pascal, Java

3

289

02.12.2011 21:36

matwej

V tomto fóre nie sú ďalšie neprečítané témy.

PHP OOP

v PHP, ASP

3

126

18.02.2013 7:20

DeiForm

V tomto fóre nie sú ďalšie neprečítané témy.

Konta - prihlasovanie

v Operačné systémy Microsoft

3

332

08.04.2007 21:32

audiotrack

V tomto fóre nie sú ďalšie neprečítané témy.

Prihlasovanie auta

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Automobily, motorky

38

982

11.06.2016 23:28

sedlák

V tomto fóre nie sú ďalšie neprečítané témy.

auto prihlasovanie

v Sieťové a internetové programy

4

470

04.09.2006 23:13

dj.ripper

V tomto fóre nie sú ďalšie neprečítané témy.

Opera prihlasovanie

v Sieťové a internetové programy

4

350

30.07.2009 14:48

SnakeBack

V tomto fóre nie sú ďalšie neprečítané témy.

Nefunguje prihlasovanie

v PHP, ASP

5

304

20.02.2010 18:46

scrysurn

V tomto fóre nie sú ďalšie neprečítané témy.

prihlasovanie/odhlasovanie

v PHP, ASP

6

297

12.05.2010 14:09

dessert

V tomto fóre nie sú ďalšie neprečítané témy.

[PHP] OOP diskusia

v PHP, ASP

7

2137

30.03.2015 12:59

majky358

V tomto fóre nie sú ďalšie neprečítané témy.

OOP v PHP

[ Choď na stránku:Choď na stránku: 1, 2 ]

v PHP, ASP

41

2172

28.11.2009 16:01

Tominator

V tomto fóre nie sú ďalšie neprečítané témy.

OOP a konstruktor

v PHP, ASP

8

406

01.04.2008 17:06

vl4kn0



© 2005 - 2017 PCforum, edited by JanoF