Autor Zpráva
blah
Profil *
Zdravíčko,

chtěl jsem se zeptat, jak řešíte připojování k DB pomocí mysqli. Nepřijde mi úplně košér pokaždé psát $mysqli = new mysqli("localhost", "my_user", "my_password", "world");

Máte na to nějakou speciální třídu nebo to řešíte jinak? Díky za každou odpověď
joe
Profil
Aktuální spojení ulož do nějaké statické proměnné, pokud je proměnná prázdná, pak vytvoříš nové spojení.

To ověření si můžeš udělat v metodě na volání dotazu. Například si vytvoříš statickou třídu Sql, kde název metody bude query a můžeš to volat nějak takhle

Sql::query("SELECT...");
blah
Profil *
nejsem si jistej, jak to přesně myslíš. Mohl bys to, prosím, nějak rozvést?
AM_
Profil
konstruktor $mysqli voláš většinou jen jednou, tak jaképak "pokaždé psát", to by mě spíš zajímalo jak to řešíš ty že to tam píšeš tolikrát :)
Spousta lidí si na to dělá vlastní třídy, ale to je v 99% případů zesložiťování jednoduchého. Když už "vylepšenou" třídu, použij nějakou hotovou propracovanou (jako třeba dibi)
joe
Profil
Nějak takhle (by to mohlo fungovat), teď nevím jestli se správně trefím do PHP, už jsem v něm dlouho nepsal
class Sql {

private static $connection = null;

public static function getConnection() {
if(self::$connection == null) {
self::$connection = new mysqli(...);
}
return self:$connection;
}

public static function query($sql) {
return mysqli_query($sql, self::getConnection());
}

}
blah
Profil *
joe
Jo díky, něco podobnýho už jsem si tak nějak splácal... skoro stejně, jako to tvoje :)

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: