Autor Zpráva
Pavel74
Profil *
Zdravím,

zatím moc OOP neovládám, a tak jsem se dostal do problémů, kdy mám soubor connection.php a v něm toto:

include_once 'config.php';
    $mysqli = new mysqli(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD, MYSQL_DB);
    if ($mysqli->connect_error) 
    {
      die('Connect Error (' . $mysqli->connect_errno . ') '. $mysqli->connect_error);
    }

a třídu autentizator.class.php, ve které bych se potřeboval napojit na databázi a kontrolovat e-mail a heslo:

<?php
class Autentizator
{
    function over_login($email, $heslo)
      {
          $query = sprintf("SELECT * FROM uzivatele WHERE email='%s' AND heslo='%s'",
                 $mysqli->real_escape_string($email),
                 $mysqli->real_escape_string($heslo));
                 
        $result = $mysqli->query($query);
    
        if(!$result)
        {  
              return(-1);
        }  
        else
        {
            $pocRadku = mysql_num_rows($result);
              if($pocRadku == 0)
              {
                  return(0); //nikdo se v db nenasel - neregistrovany uzivatel
            }               
            else
            {
                $radek = mysql_fetch_assoc($result);
                $dbHeslo = $radek['heslo'];
                if($heslo == $dbHeslo)
                {
                    return(1); // ok 
                }
                else
                {
                    return(2);//spatne heslo
                }      
            }
        }
        mysql_close(MYSQL_CONNECTION);
      }
}
?>

Poraďte prosím, jak to udělat, abych v metodě over_login viděl proměnnou $mysqli ze souboru connection.php.
gully
Profil
Prosím o smazání tohoto příspěvku. děkuji.
Tori
Profil
Přidejte si do třídy Autentizator proměnnou $db, konstruktoru předejte instanci mysqli. Anebo můžete použít databázovou vrstvu, např. dibi.
Pavel74
Profil *
Díky moc, už to funguje jak má.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: