[PHP] Błąd nieznanego pochodzenia

0
if (file_exists("gib/admin/$admin.pas"))
{
$plkad="gib/admin/$admin.pas";
$plkadcz=file($plkad);
$totalcz=count($plkadcz);
for($icz=0; $totalcz>$icz; $icz++)
{
$gcz=split("\|", chop($plkadcz[$icz]));
$an=explode("||", $plkadcz[$icz]);
}
print("Jest plik.");
}
else
{
print("Nie ma pliku.");
}

Czemu się wyświetla napis "Nie ma pliku", gdy plik "admin.pas" znajduje się w katalogu "gib/admin/admin.pas"?

0

"gib/admin/$admin.pas"

to chyba o to chodzi. gdy tekst jest w "" to $costam jest zmieniane na wartość danej zmiennej. wsadź to do '' i zobacz, moze się nie pomyliłem :)

bo $admin jest puste, więc wychodzi gib/admin/.pas

0

Prawie działa z wyjątkiem wyciągania ciągów z pliku. Przed "file_exists" trzeba było dać "!".

if(!file_exists("gib/admin/$admin.pas"))
{
$plkad="gib/admin/$admin.pas";
$plkadcz = file($plkad);
$totalcz = count($plkadcz);
for($icz=0; $totalcz > $icz; $icz++)
{
$gcz=split("\|", chop($plkadcz[$icz]));
$an = explode("||", $plkadcz[$icz]);
}
print("$an[0]>");
}
0
gibcio napisał(a)

Prawie działa z wyjątkiem wyciągania ciągów z pliku. Przed "file_exists" trzeba było dać "!".

no chyba nie, jak jest jakiś warunek który się nie spełnia a powinien to nie negujesz wyniku bo to nie jest rozwiązanie problemu tylko nielogiczne wyjście z sytuacji :/

pokaż lepiej więcej skryptu, jak wygląda zmienna $admin i czy na pewno ma być "$admin" a nie "admin" - może się pomyliłeś ( ?? )

0

Nie może być samo "admin.pas" bo wtedy odnosiło by się tylko do jednego pliku "admin.pas" a mi chodzi o odnoszenie się do wszystkich plików w "gib/admin".
Oto cały plik:

<?
if(!file_exists("gib/admin/$admin.pas"))
{
$plkadcz = file("gib/admin/$admin.pas");
$totalcz = count($plkadcz);
for($icz=0; $totalcz>$icz; $icz++)
{
$gcz = split("\|", chop($plkadcz[$icz]));
$an = explode("||", $plkadcz[$icz]);
}
if($an[5]=="2")
{
print("$an[0] - Jesteś adminem.");
}
else
{
print("Nie jesteś adminem.");
}
}
?>
0

powiedz mi dwie rzeczy, kto ci takie coś pokazał i gdzie widziałeś żeby takie coś działało

0

Takie coś wykorzytstane jest w "CMS WITKA TSP".

0

twój skrypt to:

jeśli nie istnieje plik "gib/admin/.pas" to pierdól to i spróbuj go otworzyć (chociaż go nie ma) a jak istnieje jakimś cudem to nic nie rób

w cmsie Witka jest taka część ale $admin (tam $login) to jest zmienna z ciasteczka, to chyba bardzo stary skrypt bo powinno być $_COOKIE[login] i otwiera to plik o nazwie z częścią z ciasteczka

po pierwsze to nie wzoruj się na cudzych skryptach tylko zacznij od kursu PHP, naucz się co to są zmienne i takie tam

po drugie musisz nauczyć się przed tym logicznie myśleć

po trzecie wzorujesz się akurat na skrypcie który już na pierwszy rzut oka ma dziurę w bezpieczeństwie że aż krzyczy "hack me !!!"

// dop - jest gorzej niż myślałem, bardziej dziurawego skryptu jeszcze w życiu naprawdę nie widziałem !

1 użytkowników online, w tym zalogowanych: 0, gości: 1