Kashub's Code Barn - "Blokowanie reklam za pomocÄ… hosts i PHP"

podświetlone jako php (dodał(a) Kashub @ 2008-07-24 21:57:43)

Twoja wyszukiwarka
Podświetl ten kod w:
Ostatnio dodane:
Losowe wpisy:
<?php
/**
 * @package Kashub's_AdCatcher
 * @version 0.2
 * @author Grzegorz 'Kashub' Szefka <grzegorz[at]szefka.com>
 * @date 2007-07-21
 * @link http://kashub.blogspot.com/2007/07/sposb-programisty-na-blokowanie-reklam.html
 */
 
// żądany element
$req = $_SERVER['REQUEST_URI'];
// pełny adres żądanego elementu
$full_path = $_SERVER['HTTP_HOST'] . $req;
 
// jeśli żądany element jest obrazkiem, to tworzymy obrazek
if (eregi('^(.)+(jpg|png|gif|jpeg|svg|bmp)$', $req)) {
	// wysłanie do przeglądarki informacji, że wysyłamy obraz gif
	header('Content-type: image/gif');
	// utworzenie obrazu o szerokości zależnej od długości $full_path i wysokości 20px
	$obrazek = ImageCreate(10*strlen($full_path)+30,20);
	// kolorujemy tło obrazka na jasny czerwony
	$kolor_tla = ImageColorAllocate($obrazek,255,204,204);
	// czerwony kolor tekstu
	$kolor_tekstu = ImageColorAllocate($obrazek,255,0,0);
	// wypisujemy na obrazku adres żądanego elementu
	ImageString($obrazek,4,3,2,'[SPAM] ' . htmlspecialchars($full_path),$kolor_tekstu);
	// wysyłamy obrazek do przeglądarki
	ImageGif($obrazek);
	// i niszczymy go, bo już nam nie jest potrzebny
	ImageDestroy($obrazek); 
}
elseif (eregi('^(.)+(js)$', $req)) { // jeśli zażądano skryptu JavaScript
	// nadpisujemy domyślny nagłówek 404 (inaczej przeglądarki uznaja, że skrypt nie istnieje i nie wykonają go)
	header('HTTP/1.1 200 OK');
	// ustawiamy typ zawartości na javascript
	header('Content-type: text/javascript');
	// i wypisujemy komunikat
	?>document.write('<span style="overflow: auto; background-color: #fee; color: #f00; font-family: courier; font-size: 14px;">'+
	'[SPAM]<?php echo htmlspecialchars($full_path); ?></span>');
	<?php
}
else { // jeśli nie żądano obrazka ani skryptu, to domyślnie wysyłamy stronę html
	?>
	<html>
		<head>
			<title>[ S P A M ]</title>
		</head>
		<body>
			<div style="width: 98%; height: 98%; overflow: auto; background-color: #fee; color: #f00; font-family: courier; font-size: 14px;">
				[SPAM] <?php echo $full_path; ?>
			</div>
		</body>
	</html>
	<?php
}
?>
| Sklep z artykułami dla dzieci | | Opony motocyklowe | | Skracacz linków | | Darmowe Blogi | | Gdzie przenieść blog za darmo? | | Kody programów | | Skracacz adresów | | Smutne Opisy | | Opisy GG |