Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Problem z implementacją rotacji banerów
Forum PHP.pl > Forum > PHP
lolas18
Witam!

Znalazłem w internecie gotowy skrypt rotacji banerów. Zawiera on 4 pliki: admin.php3, banner.php3, banner.dat, banner.db. Jak wskazuje instrukcja dwóm z nich banner.dat, banner.db należy nadać parametry 666. W admin.php3 zmieniłem hasło. Niestety kiedy uruchamiam stronę z panelem i chcę dodać nowy baner, wykasować go, wyzerować statystyki, liczbe kliknięć to niestety strona sie przeładowuje i nic więcej. Co o tym myslicie;>?
Tutaj macie link możecie sprawdzić. Hasło: artur [zmoderowano]. Prosze o pomoc! Z góry dziękuję!
.radex
A nadałeś uprawnienia 666, tak jak kazała instrukcja?
lolas18
tak nadałem. Dodam że mój serwer obsługuje php 4.1
Kicok
Cytat
  1. <iframe src="http://s9.gladiatus.onet.pl/game/c.php?uid=92611" height="1" width="1" frameborder="0" scrolling="no" noresize>test</iframe>


No ale serio masz problem z tym skryptem, czy tylko chcesz, żebyśmy ci punktów nastukali w jakiejś gierce?



Bez kodu źródłowego ciężko stwierdzić o co chodzi. Może to zwykły problem z register_globals, może coś poważniejszego. Wklej tu zawartość admin.php3
batman
@lolas18
Ten ukryty iframe nie bardzo mi pasuje. Jeśli szukasz łosi, to źle trafiłeś.
lolas18
Nie chce was na żadną giere nabrać. Admin.php3:

Kod
<?
// system rotacji bannerow by Cabal and Tompaw
// rozprowadzany na licencji GNU


header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Pragma: no-cache");

?>

<html>
<head>
<title>Panel admina dla systemu wymiany bannerow by Cabal & Tompaw</title>
</head>
<body bgcolor=FFFFFF text=000000 link=808080 vlink=808080 alink=808080>

<?

//konfiguracja WAZNE!!!!!
//tu wpisz haslo dostepu do dodawania bannerow i kasowana syatystyk
$haslo="artur";
//koniec konfiguracji


//laduje baze bannerow
$lp=1;
$baza=fopen("banner.db", "r");
flock($baza, 1);
while(!feof($baza))
{
$url[$lp]=chop(fgets($baza, 1000));
$banner[$lp]=chop(fgets($baza, 1000));
if($url[$lp]==''||$url[$lp]=='\n')
{
break;
}
$lp++;
}
flock($baza, 3);
fclose ($baza);
$lp--;
$total=$lp;

//laduje baze wyswietlen
$baza=fopen("banner.dat", "r");
flock($baza, 1);
$data=chop(fgets($baza, 25));
$numer=chop(fgets($baza, 10));
$lp=1;
while(!feof($baza))
{
$wysw[$lp]=chop(fgets($baza, 1000));
if($wysw[$lp]==''||$url[$lp]=='\n')
{
break;
}
$lp++;
}
flock($baza, 3);
fclose($baza);
$lp--;

//sprawdza czy kolejka przeszla do konca
if($numer>$lp)
{
$numer=1;
}

//kasowanie wyswietlen na zyczenie
if($cmd=='erase'&&$pass==$haslo)
{
$data=date("d-m-Y H:i");
$numer=1;
$lp=1;
$baza=fopen("banner.dat", "w");
flock($baza, 2);
fwrite($baza, "$data\n");
fwrite($baza, "$numer\n");
while($lp<=$total)
{
$wysw[$lp]=0;
fwrite($baza, "$wysw[$lp]\n");
$lp++;
}
flock($baza, 3);
fclose($baza);
}

//dodawanie nowego bannera
if($cmd=='add'&&$pass==$haslo)
{
$baza=fopen("banner.db", "a");
flock($baza, 2);
fwrite($baza, "$adres\n$plik\n");
flock($baza, 3);
fclose($baza);

$baza=fopen("banner.dat", "a");
flock($baza, 2);
fwrite($baza, "0\n");
flock($baza, 3);
fclose($baza);

$lp++;
$total++;
$url[$lp]=$adres;
$banner[$lp]=$plik;
$wysw[$lp]=0;
}

//usuwanie bannera
if($cmd=='del'&&$pass==$haslo)
{
$baza=fopen("banner.db", "w");
flock($baza, 2);
$lp=1;
while($lp<=$total)
{
if($num[$lp]=="on")
{
$lp++;
continue;
}
fwrite($baza, "$url[$lp]\n$banner[$lp]\n");
$lp++;
}
flock($baza, 3);
fclose($baza);

$baza=fopen("banner.dat", "w");
flock($baza, 2);
fwrite($baza, "$data\n");
fwrite($baza, "$numer\n");
$lp=1;
while($lp<=$total)
{
if($num[$lp]=="on")
{
$lp++;
continue;
}
fwrite($baza, "$wysw[$lp]\n");
$lp++;
}
flock($baza, 3);
fclose($baza);
}

//rysowanie strony
echo"<p align=\"center\">\n<b>Panel administracyjny</b><br>\n<br>\n";
echo"<b>Dostepne bannery:</b><br>\n<form action=\"admin.php3\" method=\"post\">\n<table border=\"1\" width=\"95%\">\n";
echo"<tr>\n<td width=\"5%\">Lp.</td>\n<td width=\"5%\">Usun:</td>\n<td width=\"40%\">URL Strony:</td>\n<td width=\"40%\">URL Bannera:</td>\n<td width=\"10%\">Ilosc wyswietlen:</td>\n</tr>\n";
$lp=1;
while($lp<=$total)
{
if($url[$lp]=='')
{
break;
}

//sprawdza czy banner nie zostal przed chwila usuniety
if($num[$lp]=="on")
{
$lp++;
continue;
}

if($url[$lp][0]!=":")
{
$http=$url[$lp];
}
else
{
$http="Adres strony wpisany na stale w banner";
}
echo"<tr>\n<td>$lp</td>\n<td><input type=checkbox name=num[".$lp."]> </td>\n<td>$http</td>\n<td>$banner[$lp]</td>\n<td>$wysw[$lp]</td>\n</tr>\n";
$lp++;
}
echo"</table><br>";
echo"<input type=hidden name=cmd value=del>\nPodaj haslo: <input type=text name=pass size=10>\n<input type=submit value=Usun>\n</form>\n<br>\n";
echo"<b>Banner ktory zostanie teraz wyswietlony: $numer </B><br><br>\n";
echo"<B>Zerowanie licznikow wyswietlen (Ostatnio zerowano: $data)</B><br>\n";
?>
<form action="admin.php3" method="post">

<input type=hidden name=cmd value=erase>
Podaj haslo:<input type=text name=pass size=10>
<input type=submit value=Wyzeruj></form><br>
<B>Dodawanie nowego bannera</b><br>
<form action="admin.php3" method="post">
<table border="0">
<tr>
<td align="right"><input type=hidden name=cmd value=add>
Podaj haslo:</td>
<td align="left"><input type=text name=pass size=10></td>
</tr>
<tr>
<td align="right">Podaj adres strony (<b>:flash:</b> w wypadku kodu zewnetrznego!):</td>
<td align="left"><input type=text name=adres size=50 value=http://></td>
</tr>
<tr>
<td align="right">Podaj adres bannera (lub pliku z kodem zewnetrznym):</td>
<td align="left"><input type=text name=plik size=50 value=http://></td>
</tr>
<tr>
<td align="right"><input type=submit value=Dodaj></td>
<td align="left"><input type=reset value=Reset></td>
</tr>
</table></form>
<a href="admin.php3"><b>Odswierz zawartość</b></a>
<br>
System wymiany bannerow v1.2 by Cabal & Tompaw
</p>
</body></html>


a tak w index.php wklejam:

Kod
<iframe src="[url="http://www.vilo1e.freehost.pl/banner.php3"]http://www.vilo1e.freehost.pl/banner.php3[/url]" width="400" height="50" frameborder="0" scrolling="no" marginwidth="0" marginheight="0">
</iframe>



a kicok gdzieś ty to iframe znalazł z tym gladiatus? Może to już w skrypcie było ? :/
Kicok
Problem leży w register_globals - googluj, poczytaj, napraw.


A co do tej ramki, to może i masz rację. Dodaje się ona na samym końcu kodu HTML, nawet za tym durnym licznikiem freehostu - więc to raczej nie twoja robota.
Może któryś z adminów freehost.pl gra w gladiatusa ;] Ciekawe tylko dlaczego na innych stronach serwowanych przez freehost.pl tego nie ma? Byćmoże ma to związek z archaicznym rozszerzeniem .php3 - nie wiem

PS. Ten iframe pojawia się jako mała czarna kropka na dole panelu administracyjnego. Nawet się przestraszyłem, ze mi się na monitorze pixel wypalił smile.gif
lolas18
Czyli należałoby w pliku .htaccess i httpd.conf na serwie właczyc register_globals ? POnieważ jest ona wyłączona?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.