#3 peter
Druhé řešení by mělo být rychlejší, ale na to jsem se vůbec neptal. O tom, že to má své nevýhody vím. :) Na googlu pod tímto pojmem nic není a PHP user contributed notes se mi procházet zrovna nechce, když moc nevím co bych za co nehradil. Musel bych projet všechny funkce a to se mi moc nechce.
Příspěvky odeslané z IP adresy 94.113.36.–
Ahoj, chtěl bych se zeptat, jestli někdo neznáte nějakou hezkou stránku, kde by byly vypsány alternativy za PHP funkce. Těmi alternativy myslím třeba toto:
(strlen($string) < 10);
//se dá nahradit
!isset($string[10]);
is_array($array);
//se dá nahradit
$array === (array) $array;
//případně také
array_key_exists($klic, $array);
//za
isset($array[$klic]);
//......
Děkuji za odpověď :)
No promiň, že jsem využil fórum. Jen jsem se chtěl poptat na lepší existující řešení.. Asi není. Díky
Hmm.. Nikdy nevíš na co klikneš.. Pokud máš zkrácenou url, tak nepoznáš, na co klikáš. S těmito url se dost setkávám na sociálních sítích, takže na to opravdu lidé mohou kliknout. To, že si to každý pohlídá, to je jako bych nepoužíval tokeny na formuláře a byl jsem náchylný na CSRF. Pokud bych to řešil přes POST, tak bych musel mít formulář, který by mi data dodával. V příspěvku o tom taky píši, ale nevím, jestli to je správný způsob. Proto se ptám, jestli není nějaký jiný.
Vím, kde sehnat informace o přihlášeném uživateli. Jde mi o to, aby někdo uživateli, který je přihlášený neposlal odkaz, který jsi napsal. Pokud by se tak stalo, tak by autor (pokud by byl přihlášený) dal omylem někomu +1 a ani by o tom nevěděl.
Díky za reakci. Tvůj způsob vypadá dobře. Mně lámalo hlavou, jak bych měl tu třídu správně napsat, abych tam musel měnit co nejméně věcí. Druhý způsob, který jsem napsal v příspěvku vypadá dobře, nebo máš výhrady?
Ahoj, jak správně napsat třídu, která pracuje s databází? Třeba když mám ve třídě privátní metodu, která z databáze získává data dle argumentů, které předá sám uživatel. S těmito získanými data chci pak ve třídě nadále pracovat. Je tedy lepší navrhnout třídu jako:
public function __construct($id)
{
....
}
// $dotaz = "SELECT * FROM users WHERE ID = ?";
private function metoda($dotaz)
{
....
return $ziskanaData;
}
a nebo:
public function __construct($id)
{
...
}
public function nastavInformace($tabulka, $poleID)
{
//uložení do privátních proměnných
}
private function metoda()
{
$dotaz = "SELECT * FROM $this->tabulka WHERE $this->poleID = ?";
...
return $vybranaData;
}
Popřípadě, je zde jiný více užitečný přístup, jak docílit podobného výsledku? Osobně mi přijde první případ méně užitečný, protože pokud s danou třídou budu pracovat po delší době, tak nebudu vědět, jak zapsat korektní dotaz, načež u druhé možnosti mě to trápit nemusí. Děkuji za rady.