![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 194 Pomógł: 0 Dołączył: 22.09.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
Cookies zapisywane jest w pliku login.php i dobrze jest odczytywane. Natomiast w pliku index.php nie chce odczytać ciastka (zawartość pusta). Nie kasuje się ono, ponieważ po powróceniu do login.php zawartość wyświetla się. Obydwa pliki są w tym samym katalogu.
Poniżej dam potrzebne fragmenty plików... INDEX.php: [php:1:08f9e69b33]<?php if($log=="plik3man") { if($HTTP_COOKIE_VARS['Plik3Man'.$security] == $login.$pass.$security) { echo(''); } else { echo(' <script type="text/javascript">location="login.php?x='.$security.'"</script> '); } } if($log=="system") { if (!isset($_SERVER['PHP_AUTH_USER'])) { header('WWW-Authenticate: Basic realm="Wpisz login i hasło, aby dostać się do administracji."'); header('HTTP/1.0 401 Unauthorized'); echo 'Musisz się zalogować.'; exit; } } else { echo('BŁĄD!'); } if($HTTP_COOKIE_VARS["Plik3Man".$security] != $login.$pass.$security) { echo('t'); } echo($HTTP_COOKIE_VARS['Plik3Man'.$security]); ?>[/php:1:08f9e69b33] LOGIN.php: [php:1:08f9e69b33]<?php if($_GET['logint']=="tak") { setcookie("Plik3Man".$security,$login.$pass.$security,time()+5000000); if($HTTP_COOKIE_VARS['Plik3Man'.$security] == $login.$pass.$security) { echo('Zalogowałeś się pomyślnie.'); } else { echo('Nieprawidłowy login lub hasło!'); } } ?>[/php:1:08f9e69b33] [php:1:08f9e69b33]<?php if($_GET['logint']=="tak") { echo('<meta http-equiv="refresh" content="3; URL=index.php" />'); } echo($_COOKIE['Plik3Man'.$security]); ?>[/php:1:08f9e69b33] [php:1:08f9e69b33]<?php if($x==$security) { echo(' <div align="center">$Plik3Man - logowanie</div> <form method="post" action="login.php?logint=tak"> <table cellspacing="1" cellpadding="3" style="border: 1px solid green"> <tbody> <tr> <td colspan="2" class="dth"> <b>Logowanie do $Plik3Man</b> </td> </tr> <tr> <td class="dt1"> <b>Login:</b> </td> <td class="dt2" width="200"> <input type="text" name="login" /> </td> </tr> <tr> <td width="400" class="dt1"> <b>Hasło:</b> </td> <td class="dt2" width="200"> <input type="password" name="pass" /> </td> </tr> <tr> <td colspan="2" class="dth"> <input type="submit" value="Dalej >>>" /></div> </td> </tr> </tbody> </table> </form> '); } else { echo('<span style="color: red">Policja? Tak. Mamy tu hackera, który próbuje się włamać na nasz serwer! (...) <br /></span>PRÓBA WŁAMANIA!!!'); } ?>[/php:1:08f9e69b33] Co jest źle, że tak się dzieje? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 436 Pomógł: 6 Dołączył: 8.11.2003 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
Zrób ten kod bardziej czytelny, bo teraz trudno się tam czegokolwiek dopatrzeć. !!
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 194 Pomógł: 0 Dołączył: 22.09.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
poprawiłem
O co tu chodzi? Wiecie? Jaki jest błąd? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 0 Dołączył: 7.03.2004 Skąd: Szczecin|Bukowe Ostrzeżenie: (0%) ![]() ![]() |
Jak dla mnie nie jest to jeszce najlepiej poprawione, bo nadal trudno sie rozczytac:/
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 194 Pomógł: 0 Dołączył: 22.09.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
OK - już lepiej się nie da... Więc piszcie szybciej... co mam zrobić, żeby w INDEX.php cookie było odczytywane?
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 436 Pomógł: 6 Dołączył: 8.11.2003 Skąd: Szczecin Ostrzeżenie: (0%) ![]() ![]() |
eeee :/ Zacząłem czytać ten kod i wogóle go nie skapowałem pojawiają się tam zmienne, które nigdzie nie są zdeklarowane i nie mają wartości. Np. zmienne: $security, $log, $Plik3Man Może nas oświecisz co chciałeś uzyskać bo z kodu tego nie wyczytam. Pewnie przyczyną jest register globals i tablice SuperGlobalne. Do odczytywania ciastek używaj: $_COOKIE, do odczytywania pól formularza wysłanych metodą "POST" używaj tablic: $_POST. Do odczytywania zmiennych w linkach to przez: $_GET.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 194 Pomógł: 0 Dołączył: 22.09.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
Zmienne typu $security, $log są w specjalnym pliku - sets.db.
Czy da coś, jak ustawię adres "0", a domenę, jaka istnieje? |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 194 Pomógł: 0 Dołączył: 22.09.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
OK, nie wiem, co było źle, ale jest OK.
Ale jest problem. Tak jak pisało w manualu, jest niespodzianka - cookie dopiero widać jako skasowane lub dodane po odświeżeniu strony. Jak to ominąć?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 1 Dołączył: 19.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
np. poprzez wymuszenie odswierzenia strony przez header() albo "recznie" wpiszanie wartosci do $_COOKIE :-)
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 194 Pomógł: 0 Dołączył: 22.09.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
BŁĘDY 1:
Warning: fopen(cfg/sets.db): failed to open stream: Permission denied in /home/piwko/users/humor.pl/m/mp1/data/pliki/konfigurator.php on line 42 Warning: flock(): supplied argument is not a valid stream resource in /home/piwko/users/humor.pl/m/mp1/data/pliki/konfigurator.php on line 42 Warning: fwrite(): supplied argument is not a valid stream resource in /home/piwko/users/humor.pl/m/mp1/data/pliki/konfigurator.php on line 42 Warning: flock(): supplied argument is not a valid stream resource in /home/piwko/users/humor.pl/m/mp1/data/pliki/konfigurator.php on line 42 Warning: fclose(): supplied argument is not a valid stream resource in /home/piwko/users/humor.pl/m/mp1/data/pliki/konfigurator.php on line 42 Wystąpił błąd. Konfiguracja nie została zapisana. Spróbuj powtórzyć poprzedni poziom. Sprawdź, czy atrybuty katalogów i plików są poprawne. KATALOG CFG MA CHMOD 766. DLACZEGO TAKIE SĄ BŁĘDY? BŁĘDY 2... Występowały błedy, że operation not permitted. DLACZEGO tak się dzieje? |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 1 Dołączył: 19.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Chodzi o prawa do pliku sets.db a nie katalogu.
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 194 Pomógł: 0 Dołączył: 22.09.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
Sets.db jest wtedy właśnie tworzony. Powinienem użyć narzędzia TOUCH?
Może to są po prostu widzimisie serwera Piwko.pl? I tak nie może być konfliktów z serwerami. Jak ten problem zostanie rozwiązany, będzie następny - błąd w Konfigurator.php na serwerze Lycos. Nie widzę tam żadnego błędu, ale może... |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 1 Dołączył: 19.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
a tworzysz plik poprzez fopen('sets.db', 'w+') ?
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 194 Pomógł: 0 Dołączył: 22.09.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
[php:1:ab9fdfa03b]<?php
$plik=fopen("cfg/sets.db","w"); flock($plik,2); fwrite($plik,$vCfg); flock($plik,3); fclose($plik); if(file_exists("cfg/sets.db")) { chmod("cfg/sets.db", 0666); ?>[/php:1:ab9fdfa03b] |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 18:43 |