_newbie_ Posted December 1, 2004 Report Share Posted December 1, 2004 Vai kāds varētu paskaidrot kā aizliegt tiešu piekļūšanu PHP failam no browsera. Piemēram ir fails none.php. Ja raksta http://serveris/none.php vajadzeetu, lai izmetas pazinonjums, ka failam 'pa tiešo' nevar piekļūt, bet ja tiek padoti kādi parametri no formas - none.php tie jāapstrādā. Paldies! Link to comment Share on other sites More sharing options...
bubu Posted December 1, 2004 Report Share Posted December 1, 2004 Tai lapā, kur ģenerē to formu, kura jāpadod none.php, tur padod kukiju (ar kādu slepenu tekstu :) un tad tajā none.php pārbaudi. Ja ir tāds kukijs, tad viss ok (un iznīcini kukiju), ja nav, tad attiecīgi kļūdu saki. Link to comment Share on other sites More sharing options...
_newbie_ Posted December 1, 2004 Author Report Share Posted December 1, 2004 Paldies. Aptuveni sapratu, bet varbūt k-kaadu piemeeru vareetu. Esmu galiigs iesaaceejs un lai iebrauktu cookijos man vajadzeetu daudz vairaak laika, nekaa ja buutu kaads piemeers, ko papeetiit. Thanks again! Link to comment Share on other sites More sharing options...
Venom Posted December 2, 2004 Report Share Posted December 2, 2004 pamatā pietiktu arī if (empty($_SERVER['PHP_REFERER'])) { header('HTTP/1.0 404 Not Found'); exit; } Link to comment Share on other sites More sharing options...
bubu Posted December 2, 2004 Report Share Posted December 2, 2004 manuāli nelasi? Lai uzliktu kukiju - fails.php: ... setcookie('kukijs', '1'); ... echo '<form action="none.php" ... '; ... Lai nolasītu kukiju - none.php: ... if (isset($_COOKIE['kukijs'])) { // te tiekam no fails.php formas setcookie('kukijs', '', time() - 3600); // izdzēšam kukiju ... } else { echo 'Tu nāc no nepareizās lapas! Ej kautkur citur!'; } ... Link to comment Share on other sites More sharing options...
bubu Posted December 2, 2004 Report Share Posted December 2, 2004 Refereru ir diezgan vienkārši noviltot Link to comment Share on other sites More sharing options...
Aleksejs Posted December 2, 2004 Report Share Posted December 2, 2004 Sāku rakstīt atbildi un sapratu, ka neesu sapratis problēmu laikam (-; Vai problēma ir: a) ir lapa none.php, kurai būtu jāstrādā tad un tikai tad, ja tai ir padoti pareizie GET/POST mainīgie? b) ir lapa none.php, kuru nedrīkstētu izsaukt pa tiešo, kā none.php, bet tikai includēt, vai requirot? Kā būtu ar šādu variantu problēmai b): <?php if($SERVER['PHP_SELF'] != 'pareiza_lapa.php'){ header('HTTP/1.0 404 Not Found'); exit; } ?> Link to comment Share on other sites More sharing options...
bubu Posted December 2, 2004 Report Share Posted December 2, 2004 a) Link to comment Share on other sites More sharing options...
Analgiins Posted December 2, 2004 Report Share Posted December 2, 2004 manuprāt vislabākais variants ir šis: // Security row if (basename($_SERVER['PHP_SELF']) == basename(__FILE__)) die; Link to comment Share on other sites More sharing options...
bubu Posted December 2, 2004 Report Share Posted December 2, 2004 Analgīns tu nesaproti. Viņam vienā failā ir forma <form action="none.php"> Un viņš grib, lai tad, kad leitotājs pa taisno ieraksta adresē none.php, tad lai parādās kļūdas paziņojums. Nevis tad, kad formu submito normāli. Link to comment Share on other sites More sharing options...
Analgiins Posted December 2, 2004 Report Share Posted December 2, 2004 nu paga... manis uzrakstiitaa rindinja jau arii paarbauda, vai lietotaajs niet uz lapu none.php pa taisno. Es piemeeram to lietoju shaadi: ir fails index.php un ir fails config.php (nu kur visaadas svariigas lietas), tajaa config.php saakumaa ir taa manis uzrakstitaa rindinja, a to pashu config.php es require index.php. No indeks lapas var iekljaut to config.php, a ja pa taisno, tad die (nu vienalga ko dariit - pazinjojums kaads vai kas cits) nu bet ja submito, tad gan jau ka liidzi naak kaadi mainiigie (POST vai GET), so.. vispism paarbaudam, vai ir kaadi maniigie vai tie atbilst vajadziigajam - ja jaa, tad apejam to security row un daram kas daraams. Kas te ko nesaprast.. to sindinju es vienkaarshi arii lietoju meerkjim, lai nepiekljuutu pie faila pa taisno, tb, address baaraa rakstot to Link to comment Share on other sites More sharing options...
Analgiins Posted December 2, 2004 Report Share Posted December 2, 2004 starp citu bubu, ko tu ar to domaa - submitot formu normaali ? Link to comment Share on other sites More sharing options...
Venom Posted December 2, 2004 Report Share Posted December 2, 2004 if (!$_POST) exit; Link to comment Share on other sites More sharing options...
bubu Posted December 2, 2004 Report Share Posted December 2, 2004 starp citu bubu, ko tu ar to domaa - submitot formu normaali ? Uzspiežot pogu submit, nevis ierakstot none.php adreslaukā. Tavs baseneame te nekur nedarbosies, jo netiek nekas includots/requirots! Link to comment Share on other sites More sharing options...
Analgiins Posted December 2, 2004 Report Share Posted December 2, 2004 nu taapeec vajag normaali jautaajumu uzdot un paskaidrot, kas tad iisti ir - includi vai "ne-includi" vai kaa shajaa gadiijumaa jaapaarbauda POST mainiigo esamiiba (gan jau ka arii pareiziiba) ai, ko es te vispaar striidos, sen jau risinaajumi atrasti Link to comment Share on other sites More sharing options...
Recommended Posts