Zakázání přístupu z určitých webů – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Zakázání přístupu z určitých webů – PHP – Fórum – Programujte.comZakázání přístupu z určitých webů – PHP – Fórum – Programujte.com

 

baryman0
Newbie
28. 7. 2008   #1
-
0
-

Zdravím, mám web http://buildstate.net a potřebuju zamezit surfům a jiným iframe aby se mi přes to dostal nekdo na web (porušuje to pravidla hry, ničí to "opravdovou návštěvnost"). Nevíte nekdo jak zakázat přístupy z nejakých webů? Není na to už dopředu definovaná některá proměná, která by v sobě mela předchozí web?

Moc děkuji za každou radu :)

Nahlásit jako SPAM
IP: 84.38.187.–
Blujacker
~ Moderátor
0
Grafoman
28. 7. 2008   #2
-
0
-
Nahlásit jako SPAM
IP: 213.220.226.–
Navštivte server Matematika pro každého
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
baryman0
Newbie
28. 7. 2008   #3
-
0
-

To Blujacker :
supr díky,
tazke udělat podmínku když $_SERVER["HTTP_REFERER"] se bude shodovat se zakázaným serverem tak aby to hodilo ban nebo tak neco a kam to ale mám vložit? na začátek každé strany? na index?

Nahlásit jako SPAM
IP: 84.38.187.–
Blujacker
~ Moderátor
0
Grafoman
28. 7. 2008   #4
-
0
-

The address of the page (if any) which referred the user agent to the current page.


Do téhle proměnné $_SERVER["HTTP_REFERER"] se ukládá stránka, ze které jsi se dostal na aktuální stránku. Chtělo by to tedy vytvořit například soubor kontrola.php, který by jsi includoval do každé stránky a tam kontroloval, zda uživatel nepřišel ze zakázané stránky.

Nahlásit jako SPAM
IP: 213.220.226.–
Navštivte server Matematika pro každého
Najdete zde články zabývající se matematikou základních a středních škol a databázi hlavolamů.
Pro vyzkoušení Vaš
baryman0
Newbie
28. 7. 2008   #5
-
0
-

To Blujacker :
jj, takze na začátake každého dát
include "kontrola.php";

Nahlásit jako SPAM
IP: 84.38.187.–
28. 7. 2008   #6
-
0
-

PHP je dobre mit zorganizovane

a) Pomoci modulu - mas jednu stranku, pres kterou se prostrednictvim include pristupuje k ostatnim jako modulum.

b) Mas jeden soubor, ktery includujes do kazde stranky. tento soubor obbsahuje include vsech potrebnych knihoven, inicializace atd.

Kdyz se podivas na nejake vetsi projekty, tak snad kazdy je zorganizovany jednim z techto dvou zpusobu (podstane obvyklejsi je A).

Problem ktery ty mas tam pak neexistuje :)

Nahlásit jako SPAM
IP: 213.220.192.–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
baryman0
Newbie
28. 7. 2008   #7
-
0
-

jj chápu a nejde nejak zakázat aby se stránka zobrazovala jako iframe? protože pres iframe si to lidi daj na web a přičitaji se lidi

Nahlásit jako SPAM
IP: 84.38.187.–
baryman0
Newbie
28. 7. 2008   #8
-
0
-

další dotaz s $_SERVER["HTTP_REFERER"]; zjistim odkud přišel, ale treba to bude www.stranka.cz/banan/index.php a já to porovnávám jen s www.stranka.cz a tak se to nehoduje, jde nejak udelat aby to kontrolovalo tak, aby to našlo "www.stranka.cz" v té kompletní adrese.

Víte?

Nahlásit jako SPAM
IP: 84.38.187.–
marioff0
Expert
28. 7. 2008   #9
-
0
-

tu stranku si nakodil sam???

jo vime, ja pouzivam regularne vyrazy (napr. eregi http://sk.php.net/manual/en/function.eregi.php)
ale uplne by mohlo stacit strpos.... http://sk.php.net/manual/en/function.strpos.php

a ze som taky dobry , tu mas moje riesenie:

<?php


$vstup = $_SERVER["HTTP_REFERER"];

if (eregi("^((http|https)?[_a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,4})[/]?(.*)?$",$vstup,$vysledok)) {
$adresa = urldecode($vysledok[2]); // tu mas tu adresu co potrebujes....
}



PS: newiem ci sa v refereri nachadza aj protokol (asi nie) ?

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
28. 7. 2008   #10
-
0
-

A co budete delat, kdyz vam na tu stranku prijde nekdo LINKEM z jineho webu? Vykopnete ho?

Nahlásit jako SPAM
IP: 213.220.192.–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
marioff0
Expert
28. 7. 2008   #11
-
0
-

asi nepripocita dalsieho cloveka do statu... :smile4:

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
baryman0
Newbie
28. 7. 2008   #12
-
0
-

To CommanderZ :
já jen potřebuju udělat to, že když nekdo přijde ze zakázaného serveru (surfy atd.), tak at ho to nepustí dál a vypíše zákaz.

Mám soubor kontrola.php

a v něm mám toto

<?php

$zakaz = array("http://baryhoshop.wz.cz/2/", "http://www.baryhoshop.wz.cz/2/", "http://websurf.cz", "http://websurf.cz","http://ebesucher.de","http://www.ebesucher.de","http://autohits.dk","http://www.autohits.dk");
$pocet = count($zakaz);
$ref = $_SERVER["HTTP_REFERER"];

for ($i=0;$i<$pocet;$i++) {
if ($zakaz[$i]==$ref) {
echo "Zákaz - cz.buildstate.net";
exit;
}
}
?>


funguje to ale jen při tom, když se tam někdo dostane přes PŘESNOU adresu, ale kdyby nekdo přisel třeba z www.baryhoshop.wz.cz/slozka/index.php tak už ho to pustí a tomu já potřebuju nějak zamezit. Nejaké nápady?

P.S. Jo kodoval jsem to a cele delal ja (krom anglickeho překladu) a párkrát mi pomohl známý :)

Nahlásit jako SPAM
IP: 84.38.187.–
survik1
~ Moderátor
0
Posthunter
28. 7. 2008   #13
-
0
-

To baryman : Příspěvek viz výše:

<?php

$zakaz = array("http://baryhoshop.wz.cz/2/", "http://www.baryhoshop.wz.cz/2/","http://websurf.cz","http://websurf.cz","http://ebesucher.de","http://www.ebesucher.de", "http://autohits.dk","http://www.autohits.dk");
$ref = $_SERVER["HTTP_REFERER"];

if (eregi("^((http|https)?[_a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,4})[/]?(.*)?$",$ref,$vysledok)) {
$adresa = urldecode($vysledok[2]);

if (in_array($adresa, $zakaz)) {
echo "Zákaz - cz.buildstate.net";
exit;
}
?>

Nahlásit jako SPAM
IP: 89.103.104.–
Život je jen hra, která se nedá vyhrát.
baryman0
Newbie
28. 7. 2008   #14
-
0
-

nějak mi to nechce fungovat, kua

Nahlásit jako SPAM
IP: 84.38.187.–
survik1
~ Moderátor
0
Posthunter
28. 7. 2008   #15
-
0
-

To baryman : co to píše? popř. jaká je hodnota proměnné $adresa?

Nahlásit jako SPAM
IP: 89.103.104.–
Život je jen hra, která se nedá vyhrát.
marioff0
Expert
28. 7. 2008   #16
-
0
-

skus toto a skopiruj vysledok sem! :

<?php 

$zakaz = array("http://baryhoshop.wz.cz/2/", "http://www.baryhoshop.wz.cz/2/","http://websurf.cz","http://websurf.cz","http://ebesucher.de","http://www.ebesucher.de", "http://autohits.dk","http://www.autohits.dk");
echo "ref: ";
echo $ref = $_SERVER["HTTP_REFERER"];
echo "";

if (eregi("^((http|https)?[_a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,4})[/]?(.*)?$",$ref,$vysledok)) {
echo "adresa: ";
echo $adresa = urldecode($vysledok[2]);
echo "";

if (in_array($adresa, $zakaz)) {
echo "Zákaz - cz.buildstate.net";
exit;
}
?>


nejak sa validne < b r / > straca z textu .....

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
baryman0
Newbie
28. 7. 2008   #17
-
0
-

To survik1 :
ok už jsem to udělal takhle

<?php 

$zakaz = "bary";
$ref = $_SERVER["HTTP_REFERER"];

if (eregi($zakaz, $ref)) {
echo "Zákaz";
exit;
}
?>


a když prijdu z webu www.baryhoshop.wz.cz/... tak to napíše zákaz, jen potrebuju vedet jestli udelat z $zakaz pole kde budou všechny zakázané weby bude to fungovat?

Nahlásit jako SPAM
IP: 84.38.187.–
marioff0
Expert
28. 7. 2008   #18
-
0
-

To baryman : boze moj vyskusaj prispevok vyssie a hod mi vysledok.....

a ten posledny kusok kodu si myslel zo srandy , vsak????

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
baryman0
Newbie
28. 7. 2008   #19
-
0
-

To marioff :
v tvem vysledku chybelo zakončení tagu if, ale dodelal jsem to, normálne se načte stránka, bew sebemenších problémů

Nahlásit jako SPAM
IP: 84.38.187.–
baryman0
Newbie
28. 7. 2008   #20
-
0
-

To marioff :
který poslední kousek?

Nahlásit jako SPAM
IP: 84.38.187.–
marioff0
Expert
28. 7. 2008   #21
-
0
-

To baryman : v mojom kode if nechyba, survik sa pozabudol.... no ale co ti vypise potrebujem vidiet...???.... musi vypisal minimalne referera


tento som myslel :smile6:

<?php 

$zakaz = "bary";
$ref = $_SERVER["HTTP_REFERER"];

if (eregi($zakaz, $ref)) {
echo "Zákaz";
exit;
}
?>

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
baryman0
Newbie
28. 7. 2008   #22
-
0
-

výpis : "ref: http://baryhoshop.wz.cz/2/"

edit : a co se ti na tom kodu nelibi?

Nahlásit jako SPAM
IP: 84.38.187.–
baryman0
Newbie
28. 7. 2008   #23
-
0
-

tak jsem to vyřešil takto a vše funguje jak má

<?php 

$zakaz = array("bary","besucher.de",); // jen ukazky pro ilustraci
$ref = $_SERVER["HTTP_REFERER"];

for ($p = 0; $p < count($zakaz); ++$p) {
if (eregi($zakaz[$p], $ref)) {
echo "Zákaz";
exit;
}
}
?>

Nahlásit jako SPAM
IP: 84.38.187.–
marioff0
Expert
28. 7. 2008   #24
-
0
-

skus toto , trochu som to prerobil:

<?php

$ref = $_SERVER["HTTP_REFERER"];
$zakaz= array("programujte.com", "baryhoshop.wz.cz");

if (eregi("^http[s]?://([_a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,4})",$ref,$vysledok)) {

$adresa = urldecode($vysledok[1]);

}

if (in_array($adresa, $zakaz)) {
echo "Zákaz - cz.buildstate.net";
exit;
}
?>


PS: otestoval som to, musi to ist!

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
baryman0
Newbie
28. 7. 2008   #25
-
0
-

mě už funguje toto

<?php 

$zakaz = array("bary","besucher.de",); // jen ukazky pro ilustraci
$ref = $_SERVER["HTTP_REFERER"];

for ($p = 0; $p < count($zakaz); ++$p) {
if (eregi($zakaz[$p], $ref)) {
echo "Zákaz";
exit;
}
}
?>


zdá se ti na tom něco šptného že ses tomu kodu předtím tak smál? piš at vím a předejdu chybám :)

Nahlásit jako SPAM
IP: 84.38.187.–
marioff0
Expert
28. 7. 2008   #26
-
0
-

odporucam ti jednu vec... cykly pouzivaj len ked je to nutne... hlavne ked sa da problem vyriesit o dost jednoduchsie...

napr. na tvoju stranku pride niekto zo stranky barybary.sk a tiez ma zakaz... pretoze tvoj kod hlada vyrazy nachadzajuce sa v celej adrese...

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
baryman0
Newbie
28. 7. 2008   #27
-
0
-

To marioff :
jasný, vzdyt si tam napíšu celou adresu to je samozřejmost :)

Nahlásit jako SPAM
IP: 84.38.187.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 22 hostů

Podobná vlákna

Zakazani osy — založil koudis

Zakazání EXPLOLERU — založil DSalieri

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý