Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ 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
Príspevok NapísalOffline : 03.03.2011 14:12

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: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 03.03.2011 14:15

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
Príspevok Napísal autor témyOffline : 03.03.2011 14:22

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: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 03.03.2011 14:31

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
Príspevok Napísal autor témyOffline : 03.03.2011 14:36

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: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 03.03.2011 14:43

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
Príspevok Napísal autor témyOffline : 03.03.2011 14:52

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


Odpovedať na tému [ Príspevkov: 7 ] 


Podobné témy

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

v PHP, ASP

11

691

12.09.2007 17:09

Tominator Zobrazenie posledných príspevkov

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

v PHP, ASP

6

413

16.11.2011 14:51

susedx Zobrazenie posledných príspevkov

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

v PHP, ASP

20

1388

29.02.2008 20:24

stenley Zobrazenie posledných príspevkov

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

v PHP, ASP

1

621

26.10.2009 21:44

rooobertek Zobrazenie posledných príspevkov

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

v Operačné systémy Microsoft

3

534

08.04.2007 21:32

audiotrack Zobrazenie posledných príspevkov

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

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

3

541

02.12.2011 21:36

matwej Zobrazenie posledných príspevkov

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

v PHP, ASP

6

531

12.05.2010 14:09

dessert Zobrazenie posledných príspevkov

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

v Sieťové a internetové programy

4

526

30.07.2009 14:48

SnakeBack Zobrazenie posledných príspevkov

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

v PHP, ASP

5

562

20.02.2010 18:46

scrysurn Zobrazenie posledných príspevkov

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

v PHP, ASP

3

293

18.02.2013 7:20

DeiForm Zobrazenie posledných príspevkov

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

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

2

432

12.01.2018 14:33

camarovk19 Zobrazenie posledných príspevkov

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

v Sieťové a internetové programy

4

702

04.09.2006 23:13

dj.ripper Zobrazenie posledných príspevkov

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

v PHP, ASP

1

493

29.04.2010 17:32

stenley Zobrazenie posledných príspevkov

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

2627

11.06.2016 23:28

sedlák Zobrazenie posledných príspevkov

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

v Operačné systémy Microsoft

3

396

17.02.2008 14:34

BBUlet Zobrazenie posledných príspevkov

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

v Služby a webstránky

3

639

21.05.2012 9:29

tairikuokami Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra