Archívum - Okt 28, 2011 - Fórum téma
Ajax & Post biztosítás
Üdv mindenkinek.
Egy olyan elméleti problémán akadtam meg, hogy hogyan tudnám megvédeni az Ajax lekérések fájljait és a Post-olt adatokat feldolgozó fájlokat attól hogy bárki, bármikor megnyithassa a "feldolgozó" fájlokat.
Adott egy oldal - urlap.php - amin van egy űrlap, ami adatokat küld post metódussal a feldolgoz.php-nek.
Hogy tudom a legbiztosabban leellenőrizni hogy a feldolgoz.php mindenképp az urlap.php-től kapott adatot?
Vagy a másik eset, mikor az oldal - nyito.php - időzítve elindít egy ajax lekérést a mikor.php-felé.
Semmit nem küld, csak megjeleníti a mikor.php tartalmát.
De ezt csak akkor kellene tennie ha ajax-al, a nyito.php-ről és annak a domainjéről lett megnyitva.
A Referer kilőve, űrlapnál az isset és a formátumellenőrzés az alap, ajax-nál a X-Requested-With header nem mondható 100%-os biztosnak, a defined-et nem mondanám elegánsnak - bár nem tudom.
Elgondolkodtam hogy esetleg Session-al valahogy meg lehetne ezt oldani...
Betöltéskor megnézem hogy létezik-e az adott session.
Ha nincs, létrehozom és eltárolom benne az akkori dátumot/időt.
Ha van, megnézem hogy a tárolt adat régebbi-e mint pl. 3 perc.
Ha nem régebbi, akkor minden rendben.
Ha viszont régebbi, akkor nem küldhetek 404-et vagy hibaoldalt/hibaüzenetet mert lehet hogy egy űrlapon eltölt a felhasználó 3 percnél többet... sőt.
Tehát szerintem ez az ötletem sem a legjobb.
Lehet egyáltalán ilyen "csak úgy" lekéréstől valahogy védekezni?
Előre is köszönöm
■ Egy olyan elméleti problémán akadtam meg, hogy hogyan tudnám megvédeni az Ajax lekérések fájljait és a Post-olt adatokat feldolgozó fájlokat attól hogy bárki, bármikor megnyithassa a "feldolgozó" fájlokat.
Adott egy oldal - urlap.php - amin van egy űrlap, ami adatokat küld post metódussal a feldolgoz.php-nek.
Hogy tudom a legbiztosabban leellenőrizni hogy a feldolgoz.php mindenképp az urlap.php-től kapott adatot?
Vagy a másik eset, mikor az oldal - nyito.php - időzítve elindít egy ajax lekérést a mikor.php-felé.
Semmit nem küld, csak megjeleníti a mikor.php tartalmát.
De ezt csak akkor kellene tennie ha ajax-al, a nyito.php-ről és annak a domainjéről lett megnyitva.
A Referer kilőve, űrlapnál az isset és a formátumellenőrzés az alap, ajax-nál a X-Requested-With header nem mondható 100%-os biztosnak, a defined-et nem mondanám elegánsnak - bár nem tudom.
Elgondolkodtam hogy esetleg Session-al valahogy meg lehetne ezt oldani...
Betöltéskor megnézem hogy létezik-e az adott session.
Ha nincs, létrehozom és eltárolom benne az akkori dátumot/időt.
Ha van, megnézem hogy a tárolt adat régebbi-e mint pl. 3 perc.
Ha nem régebbi, akkor minden rendben.
Ha viszont régebbi, akkor nem küldhetek 404-et vagy hibaoldalt/hibaüzenetet mert lehet hogy egy űrlapon eltölt a felhasználó 3 percnél többet... sőt.
Tehát szerintem ez az ötletem sem a legjobb.
Lehet egyáltalán ilyen "csak úgy" lekéréstől valahogy védekezni?
Előre is köszönöm
OOP class para
Adott ez a két osztályA másik:Ha meghívom a teszt függvényt, akkor :
"Fatal error: Call to a member function query() on a non-object"...
Ezzel szemben ha a teszt() a gyermek osztályban így néz kiÍgy működik, miért így van ez?
- class NewsClass extends MainClass{
- function __construct() {
- parent::_construct();
- $db=$this->db();
- }
- function test(){
- $result=$db->query("SELECT * FROM information_schema.TABLES");
- return $result->numRows();
- }
- function accessFilter(){
- parent::accessFilter();
- }
- function getIdByurl(){
- }
- }
- class MainClass{
- function __construct(){
- $db=$this->db();
- $this->accessFilter();
- }
- function accessFilter(){
- }
- function db() {
- require_once(ROOT."/libs/pear/MDB2.php");
- $db=&MDB2::connect("mysql://".DBUSER.":".DBPASS."##kukac##".DBHOST."/".DBNAME);
- if (PEAR::isError($db)) die($db->getMessage());
- $db->setFetchMode("2");
- $db->setCharset("utf8");
- return $db;
- }
- function smarty() {
- require_once(ROOT."/libs/smarty/Smarty.class.php");
- $view=new Smarty();
- $smarty->force_compile=true;
- $smarty->caching=false;
- $view->template_dir=ROOT."/themes/templates/";
- $view->compile_dir=ROOT."/themes/templates_c/";
- $view->cache_dir=ROOT."/themes/cache/";
- $view->config_dir=ROOT."/themes/configs/";
- return $view;
- }
- function xml() {
- $parser=new myParser();
- $parser->setInputFile(_ROOT.'/lang/'._PAGE_LANGUAGE.'.xml');
- $parser->parse();
- }
- }
"Fatal error: Call to a member function query() on a non-object"...
Ezzel szemben ha a teszt() a gyermek osztályban így néz ki
- class NewsClass extends MainClass{
- function __construct() {
- parent::__construct();
- }
- function test(){
- $db=$this->db();
- $result=$db->query("SELECT * FROM information_schema.TABLES");
- return $result->numRows();
- }
- function accessFilter(){
- parent::accessFilter();
- }
- function getIdByurl(){
- }
- }
WebSpell CMS kérdés
Sziasztok!
Először is nem tudom jó helyre írom-e, remélem igen!
Egy WebSpell CMS alapú weboldalt készítek és eddig sikeresen veszem az akadályokat, ám most elakadtam valamiben, és nem tudom merre induljak el a probléma megoldásához! A gond a következő:
Minden oldalon bal oldalt egy kis dobozka kilistázza a legutóbb hozzáadott videókat.

Ez így is van egészen addig amíg bele nem megyek egy kategóriába illetve ha egy videót szeretnék megnézni.
Először is nem tudom jó helyre írom-e, remélem igen!
Egy WebSpell CMS alapú weboldalt készítek és eddig sikeresen veszem az akadályokat, ám most elakadtam valamiben, és nem tudom merre induljak el a probléma megoldásához! A gond a következő:
Minden oldalon bal oldalt egy kis dobozka kilistázza a legutóbb hozzáadott videókat.

Ez így is van egészen addig amíg bele nem megyek egy kategóriába illetve ha egy videót szeretnék megnézni.
OFF: Levlista
Sziasztok!
Nagyon off, csak egy gyors kérdés, mert úgy látom, ahova feltettem a kérdésem, ott nem igazán nagy az aktivitás.
http://weblabor.hu/forumok/temak/110328
Illetve fel lehet iratkozni téma értesítőre?
Sorry az OFF-ért, de nagyon kéne a lista.
■ Nagyon off, csak egy gyors kérdés, mert úgy látom, ahova feltettem a kérdésem, ott nem igazán nagy az aktivitás.
http://weblabor.hu/forumok/temak/110328
Illetve fel lehet iratkozni téma értesítőre?
Sorry az OFF-ért, de nagyon kéne a lista.