Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
Autor | Správa |
---|
Registrovaný: 01.01.09 Prihlásený: 22.06.11 Príspevky: 87 Témy: 25 | 25 |
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); //}
} ?>
|
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14572 Témy: 66 | 66 Bydlisko: Žilina |
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, ... |
|
Registrovaný: 01.01.09 Prihlásený: 22.06.11 Príspevky: 87 Témy: 25 | 25 |
ake -1 ?. != 1 predsa znemana ze vrati iny vysledok ako 1 teda 0 alebo v pripade nejakej zbeislej chyby 2 alebo ine...
|
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14572 Témy: 66 | 66 Bydlisko: Žilina |
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, ... |
|
Registrovaný: 01.01.09 Prihlásený: 22.06.11 Príspevky: 87 Témy: 25 | 25 |
v poho uf, ano malo byt, ale aj tak dostanem bielu obrazovku, nechapem preco. A nemam kde echovat, ani na uplnom zaciatku nic nenapise.
|
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14572 Témy: 66 | 66 Bydlisko: Žilina |
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, ... |
|
Registrovaný: 01.01.09 Prihlásený: 22.06.11 Príspevky: 87 Témy: 25 | 25 |
vypisovanie mam povelene, E_ALL atd... a uz mam chybu aj mysql_num_rows vrati nulu, a zatym mam or die(mysql_error())
|
|
Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v PHP, ASP | 6 | 463 | 16.11.2011 14:51 susedx | | v PHP, ASP | 20 | 1451 | 29.02.2008 20:24 stenley | | v PHP, ASP | 11 | 723 | 12.09.2007 17:09 Tominator | | v PHP, ASP | 5 | 594 | 20.02.2010 18:46 scrysurn | | v Assembler, C, C++, Pascal, Java | 3 | 591 | 02.12.2011 21:36 matwej | | v PHP, ASP | 6 | 557 | 12.05.2010 14:09 dessert | | v Assembler, C, C++, Pascal, Java | 2 | 479 | 12.01.2018 14:33 camarovk19 | | v PHP, ASP | 3 | 335 | 18.02.2013 7:20 DeiForm | | v Sieťové a internetové programy | 4 | 757 | 04.09.2006 23:13 dj.ripper | | v PHP, ASP | 1 | 651 | 26.10.2009 21:44 rooobertek | | v Operačné systémy Microsoft | 3 | 577 | 08.04.2007 21:32 audiotrack | | v PHP, ASP | 1 | 541 | 29.04.2010 17:32 stenley | | [ Choď na stránku: 1, 2 ] v Automobily, motorky | 38 | 2801 | 11.06.2016 23:28 sedlák | | v Sieťové a internetové programy | 4 | 574 | 30.07.2009 14:48 SnakeBack | | v PHP, ASP | 8 | 610 | 01.04.2008 17:06 vl4kn0 | | v Služby a webstránky | 3 | 678 | 21.05.2012 9:29 tairikuokami |
|