Autor | Zpráva | ||
---|---|---|---|
Študy Profil * |
#1 · Zasláno: 1. 9. 2008, 22:18:05
Dobrý den prosím vás mám takovej problém s proměnou v chyboví hlášce (404)
mam tam funkci díky které zjistim z jakého ip byla ta chyba a chtěl bych tam dát promněnnou aby když to bude moje ip (85.71.39.231) tak aby se mi vypsalo "Študy" zdrojový kód: <? $domena = "www.minnehaha.ic.cz"; //doména na které je MISSING umístěn. Bez HTTP $docroot = "http://www.minnehaha.ic.cz"; //doména umístění včetně HTTP // nyní pár kritérií která budou platit pro zasílání/nezasílání emailu, jestliže se chyba vyskytne # 0 = neposílat emailové upozornění # 1 = zaslat email pouze tehdy, když je chyba vygenerovaná z nějakého odkazu z vaší domény. # 2 = zaslat email když je chyba na nějakém odkazu na Vaší stránce či když přichází někdo odjinud. $reportlevel = 2; // doporučuji 2 $emailaddress = "studyjan@gmail.com"; // mail, kam se odešle upozornění na chybu /* Funkce print_details slouží k vypsání chybové hlášky návštěvníku, tj. vypsání HTML kódu stránky */ function print_details() { // Přes global pošleme "požadavek" pro potřebné proměnné global $docroot, $REQUEST_URI, $reportlevel; echo "<title>404 - požadováná stránka nebyla nalezena</title> <br><br><br><center> <h2>404 Not Found</h2> <h3>Nenalezeno</h3> <br> Vámi hledaný dokument nebyl na serveru nalezen!<br> </center>"; // jestliže chce být administrátor informován, tak o tom dáme vědět i návštěvníku: if ($reportlevel != 0) { echo "<center>Administrátor byl ihned při zobrazení této chyby informován, jestli stránka má existovat, brzy bude v provozu !<br> <a href=\"http://minnehaha.ic.cz/index.php\"><b>Zpět na úvodní stránku</b></a></center>"; } // zavreme HTML return; } function send_email() { global $REQUEST_URI, $HTTP_REFERER, $emailaddress, $REMOTE_ADDR, $docroot; $dnes = getdate(); // promenna pro datum $d_mes= date(n); $d_den = $dnes[mday]; $d_rok = $dnes[year]; $d_hodina = $dnes[hours]; $d_minuta = $dnes[minutes]; $cas_erroru = "$d_rok.$d_den.$d_mes v $d_hodina:$d_minuta"; //zde je prý chyba $ip= "if ($REMOTE_ADDR == 85.71.39.231) echo "Študy"; else echo $REMOTE_ADDR;"; //zde je prý chyba // zprava mailu $zprava .= "404 Chyba\n\n 404 byla zjistena na: $ip"; $zprava .= " $cas_erroru\n\n"; $zprava .= "Chyba byla zaznamenana na URL: \n$docroot$REQUEST_URI\n\n"; $zprava .= "Referovana stranka byla:\n$HTTP_REFERER\n\n"; // posleme mail mail("$emailaddress", "404 Chyba - $domena", $zprava, "From: $REMOTE_ADDR"); return; } print_details(); if ($reportlevel != 0) if ($reportlevel == 1) { if (eregi($domena,$HTTP_REFERER)) send_email(); } else send_email(); // hotovo exit; ?> díky za všechny odpovědi |
||
Študy Profil * |
#2 · Zasláno: 1. 9. 2008, 22:19:30
pardon oprava:
Dobrý den prosím vás mám takovej problém s podmínkou v chyboví hlášce (404) mam tam funkci díky které zjistim z jakého ip byla ta chyba a chtěl bych tam dát podmínku aby když to bude moje ip (85.71.39.231) tak aby se mi vypsalo "Študy" |
||
BetaCam Profil |
#3 · Zasláno: 1. 9. 2008, 23:17:24
Ono by nebylo od věci si napsat :
var_dump($_SERVER); a kouknot se jaký typ skutečně obsahuje $_SERVER['REMOTE_ADDR'], lépe řečeno co je za datový typ 85.71.39.231 každopádně už na první pohled je jasné, že to není int, ale string takže if ($REMOTE_ADDR == '85.71.39.231') echo "Študy"; else echo $REMOTE_ADDR; |
||
Študy Profil * |
#4 · Zasláno: 2. 9. 2008, 15:13:35
Jo aha ha uz to mam dik xD
|
||
Časová prodleva: 16 let
|
0