Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Skrypt do "rekrutacji".
Forum PHP.pl > Inne > Oceny
Михаил_з_СССР
Proszę o subiektywną ocenę skryptu który dodaję chętnych do klanu w grze Counter-Strike. Jestem początkującym i chciałbym by ktoś mi doradził co mógłbym dodać bądź jak lepiej napisać. Przy okazji możecie ocenić wygląd strony (nie skończonej na razie, gdyż zaczynam od najtrudniejszego). Skrypt (by przetestować) znajduję się pod adresem: http://tnij.com/4NZO rekrutacja.php: http://tnij.com/xCa6 rekrutacja_dod.php: http://tnij.com/3tmr Oglądałem poczynania oceniających i muszę przyznać że nie wypełnianie pól nie ma sensu. Skrypt nie za działa, i ja muszę sprzątać ten syf. Zastanawiałem się czy warto napisać jakiś mini-panel administracyjny do tego. To było by trudne, nie ukrywam że nie wiem zbytnio jak to zrobić, ale poczytam trochę i wszytko będzie w porządku. Żmudne jest ciągłe logowanie się na FTP i modyfikacja pliku rekrutacja.txt.
trucksweb
no chyba nie ma co oceniac- jak widac po stronie, i to nie bylem ja tongue.gif

przede wszystkim filtruj wszelkie dane bo nic takiego nie robisz

zapoznaj sie z htmlspecialchars i stripslashes
Zajec
Brak weryfikacji e-maila, a do tego pozwalasz sobie na wstawienie
Kod
<script>alert(document.body.innerHTML)</script>
co właśnie zrobiłem winksmiley.jpg
Михаил_з_СССР
Czyli wypada zamienić znaczki "<" i ">" na ich HTML-owe odpowiedniki by takie rzeczy się nie zdarzały (z typ wklejaniem javascriptów przez użyszkodników)?
.radex
htmlspecialchars()

Zainteresuj się tą funkcją (wyjaśnienie w manualu)
Михаил_з_СССР
Użyłem str_replace(), jestem zielony w tym temacie i czy ktoś mógłby mi doradzić jak zrobić to bardzie "przejrzyście". Więc zmodyfikowałem skrypt dodający do bazy (tekstowej). Oznaczyłem modyfikacje komentarzem. Dla zainteresowanych http://tnij.com/3tmr.
.radex
po prostu

$info = nl2br(htmlspecialchars($info));

winksmiley.jpg
Михаил_з_СССР
OK, radex_p. Nadal kicha z cudzysłowami i apostrofami. Staram się zamienić je na ich HTML-owe zamienniki, ale tak czy siak wyświetla się backslash.
Zajec
Cytat(Миха @ 14.07.2008, 23:26:08 ) *
OK, radex_p. Nadal kicha z cudzysłowami i apostrofami. Staram się zamienić je na ich HTML-owe zamienniki, ale tak czy siak wyświetla się backslash.
To PHP stara się myśleć za Ciebie i podmienia te cudzysłowia. Spróbuj zypełnie wyłączyć magic_quotes http://pl2.php.net/manual/pl/function.set-...tes-runtime.php albo potraktuj wszystkie pola $_POST funkcją http://pl2.php.net/manual/pl/function.stripslashes.php

Poza tym poczytaj manuala... przecież to co robisz w str_replace zupełnie nie ma się do tego co chcesz osiągnąć:
  1. <?php
  2. str_replace('"', '&quot;', $info);
  3. ?>
Zamieniasz
Kod
"
, a przecież przeszkadza Ci
Kod
\"



No i... bez obrazy... ale myśl! Zabezpieczyłeś się przed wrzucaniem kodu HTML w treść, a ja właśnie bez kłopotów wrzuciłem
Kod
<script>alert(document.body)</script>
do $_POST['user'].
Михаил_з_СССР
Dzięki Zajac, potem nad tym po pracuje (nad myśleniem również, oczywiście) bo na razie nie mam czasu, obowiązki wzywają.
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.