HydePark - [Problem] Jak zacząć pisanie skryptów xd?
Warmix - 10-09-2011, 19:47 Temat postu: [Problem] Jak zacząć pisanie skryptów xd? Witam, ze 2 lub 3 tygodnie temu pomyślałem sobie, że fajnie by było tak pisać sobie skrypty do forum, poprawiać inne itd. Postanowiłem, że nauczę się chociaż trochę PHP i może coś znaczę "skryptować". Poduczyłem się o PHP i MySQL. Teraz chciałbym pomału zacząć coś pisać do przemo. Jednak, gdy przyjdzie co do czego, to nie mam zielonego pojęcia jak coś edytować, by stworzyć coś nowego, gdzie poprawić coś itd. Może jakieś porady? Pytanie kieruję szczególnie do osób, które także na początku nie mogły się połapać o co chodzi, a jednak potem im się udało i teraz piszą fajne skrypty.
Majkelo - 10-09-2011, 20:00
Przede wszystkim popatrz jak napisane są inne modyfikacje, zobacz jakie są standardy w przemie itp. Jak już to załapiesz, możesz spróbować napisać jakąś modyfikację, prostą, bardziej dla testów, niż od razu coś "grubszego" Jednak nie licz, że po kilku kursach online PHP i MySQL, będziesz w stanie pisać nie wiadomo jakie modyfikacje itp. Musisz po prostu cały czas "siedzieć" w temacie, ćwiczyć
Warmix - 10-09-2011, 20:36
no, przerobiłem ze 2 video tutoriale o PHP i MySQL, po za tym przerobiłem 2 książki od Heliona, zobaczymy co z tego będzie. Czyli teraz przyglądać się skryptom innych użytkowników, jak one działają i potem zacząć pisać drobne skrypty? No i mam nadzieję, że znajdę czas, by siedzieć w tym na bieżąco
Dlugi - 10-09-2011, 20:45
naucz się struktury "Przemo", dowiedz się który plik za co odpowiada, a będziesz miał jakąś podstawię
japi55 - 10-09-2011, 21:13
Ja się nauczyłem poprostu pomagając innym ;>
Mam też książkę o php, wg mnie jest to o niebo lepsze od kursów internetowych.
Warmix napisał/a: | po za tym przerobiłem 2 książki od Heliona |
Które?
I tak wszystkiego nie ogarniesz odrazu, potrzeba kilka miesięcy.
Seba123 - 11-09-2011, 03:07
Pierwszym krokiem jest odpowiedzenie samemu sobie na tytuł tematu Warmix napisał/a: | Jak zacząć pisanie skryptów |
Warmix - 11-09-2011, 12:46
A mam jeszcze pytanie. Gdy tworzy się jakoś modyfikację, to jakich poleceń/funkcji unikać ze względu na bezpieczeństwo? Chodzi tutaj chyba głównie o funkcje łączenia się i operacji na MySQL. Czyli czego nie używać, aby nie stać się ofiarą jakiegoś ataku lub czegoś...?
maminowiec - 11-09-2011, 13:12
w mysql to sql injection , jeśli wydasz modyfikację to napisz aby ktoś sprawdził kod.
Warmix - 11-09-2011, 13:39
Czyli chodzi głównie o takie sprawy, jak np. użytkownik w pole zamiast wpisać np. imię, wpisze dalszą część zapytania i to spowoduje usunięcie np. tabeli?
czyli mamy np.:
Cytat: | $zapyt = mysql_query("SELECT * FROM liczby WHERE liczba = '$liczba'"); |
I jeśli użytkownik wpisze, np. 1 w zmienną $liczba to ok, ale gdyby np. wpisał:
Cytat: | 1'; DROP TABLE liczby;' |
To spowoduje usunięcie całej tabeli.
Czyli chodzi o takie coś, jak wyżej napisałem? Czy np. przed takim czymś zabezpieczyłbym ustawiając ograniczenia liczby znaków, które będzie można wpisać? Są może jakieś funkcje, dzięki którym nie dało by się w ten sposób hackować forum?
A po za tym, co jeszcze może zaliczać się do tego SQL Injection?
japi55 - 11-09-2011, 13:52
Poczytaj o operacjach na ciągach.
Warmix - 11-09-2011, 14:06
Ok, zaraz przeczytam, ale mam jeszcze pytanie.
SQL Injection może nastąpić wtedy, gdy użytkownik wpisuje sam jakieś wartości, czy też w innym przypadku? W skrypcie mam np. tak, że użytkownik kilka na buttona i to powoduje np. wyświetlanie danych z jakiejś tam tabeli. Czy i w takim przypadku może wystąpić jakieś zagrożenie? Czy głownie chodzi o te zapytania, w które użytkownik ma pole i w nie ma coś wpisać i wykonuje się zapytanie?
A co do wcześniejszego postu, mogę użyć coś takiego, aby zabezpieczyć forum:
Cytat: | $a = $_POST['a'];
$do_usuniecia = "DROP";
$out = str_replace($do_usuniecia, "", $a); |
Do usunięcia "\" użyłbym "stripslashes", ale jak np. wprowadzić, aby usuwało "(cudzysłowy), '(apostrofy)?
Po za tym, mógłbym zmienną $do_usuniecia zastosować jako tablicę i tam wprowadzić kilka znaków do usunięcia, żeby nie musieć używać kilkanaście razy tego samego? Jeśli nie, to może coś z pętlą wykombinuję,, o ile oczywiście można tak zastosować tą funkcję do usuwania znaków z ciągów, które mają być dodawane do pól w tablicy...
Bucu - 11-09-2011, 14:51
Filtracja zmiennych, sql injection etc.
Poczytaj ogolnie o temacie "Bezpieczeństwo w PHP"
http://webmade.org/porady...on-xss-csrf.php
http://www.google.pl/sear...C5%84stwo+w+php
Warmix - 11-09-2011, 17:40
ok, dzięki, będę stosować te funkcje do zabezpieczenia...
Ale jeszcze jedno xd... W te funkcje filtrujące/zabezpieczające stosować do wszystkich zapytań SQL? Do tych, co użytkownik cokolwiek wpisuje to tak, ale czy jest potrzeba do tych, na które użytkownik nie ma wpływu, tzn. klika na button i zapytanie się wykonuje, więc nie ma wpływu na zapytanie, tylko powoduje wywołanie zapytania, więc chyba jakichś zabezpieczeń do tego nie trzeba..?
Woytec - 11-09-2011, 17:41
Warmix napisał/a: | A co do wcześniejszego postu, mogę użyć coś takiego, aby zabezpieczyć forum:
Cytat: | $a = $_POST['a'];
$do_usuniecia = "DROP";
$out = str_replace($do_usuniecia, "", $a); |
Do usunięcia "\" użyłbym "stripslashes", ale jak np. wprowadzić, aby usuwało "(cudzysłowy), '(apostrofy)? | Lepiej aby dodawało ukośniki przed cudzysłowiami (addslashes). Jeżeli zapytanie nie pobiera danych od użytkownika wpisanych w polach lub adresie to nie musisz się przejmować atakiem sql injection.
Bucu - 11-09-2011, 18:26
Warmix napisał/a: | ok, dzięki, będę stosować te funkcje do zabezpieczenia...
Ale jeszcze jedno xd... W te funkcje filtrujące/zabezpieczające stosować do wszystkich zapytań SQL? Do tych, co użytkownik cokolwiek wpisuje to tak, ale czy jest potrzeba do tych, na które użytkownik nie ma wpływu, tzn. klika na button i zapytanie się wykonuje, więc nie ma wpływu na zapytanie, tylko powoduje wywołanie zapytania, więc chyba jakichś zabezpieczeń do tego nie trzeba..? |
Dobrym nawykiem jest filtrowanie wszystkich zmiennych. Na pewno minimum to filtracja wszystkich $_POST i $_GET.
|
|
|