aktualnie do filtrowania stringow uzywam htmlspecialchars + mysql_real_escape_string a do liczb używam abs . czy to odpowiednie funkcje ? i czy skoro filtruje ABS w treści zapytania też musze używać mysql_real_escape_string ? aha i czy funkcje mysql_real_escape_string powinienem tylko wykorzystywać w danych które pochodzą od usera czy nawet wtedy kiedy wynikają z obliczeń lub pochodzą z bazy ?
2)Mam na swojej stronie pod katalog xxx w którym są skrypty do zadań cron , czy jest możliwość zabezpieczenie ich tak aby bezpośrednio wklepując adres nie zostały wykonane ? w komendzie (w zadaniu cron) mam coś takiego:
/usr/bin/lynx --dump http://strona.pl/xxx/skrypt.php czy to przypadkiem nie oznacza że łączy się ze zewnątrz i jak zabezpieczając taki katalog to nawet cron się nie wykona ?.
3 chciałbym aby użytkownicy piszący np. na czacie lub poczcie między sobą mogli też wklejać np. skrypty html ale tak żeby po wysłanie nie wykonał się ten skrypt tylko był pokazany kod , w jaki sposób bezpiecznie na to zezwolić ?
4 posiadam problem ze skryptem którego zadaniem jest wykonanie jakiegoś kodu ale tylko osobie która pierwsza hmm wywoła np. skrypt plik.php , problem polega na tym że po załadowaniu pliku.php dodawany do tabeli w bazie jest id danego użytkownika ale czasem bywa tak że 2 użytkownikom uda się wykonać czynność z pliku.php – czy jest to w jakiś sposób do wyeliminowania ?
5 Aktualnie na swojej stronie odsyłacze mam na zasadzie index.php?page=podstrona , znalazłem regułkę:
RewriteEngine On RewriteRule ^(.+).html$ index.php?page=$1
która teoretycznie działa bo wchodząc np. strona.html wczytuje się wraz z panelem strony głownej ale czy to dobre zastosowanie czy nie za bardzo ?
6) W tabelach mam sporo pól liczbowych i na każdym z nich ustawiałem długośc pola , czy to w ogóle potrzebne ? zauważyłem że nie ma znaczenia jaką długość ustalę , w pola int liczą się tylko typy pola(tak mi się wydaje)
7) w częscie moich tabel przetrzymywane są dane usera , w każdej z takiej tabel mam pole id (auto numerowanie) oraz pold id_user które mówi samo zasiewie , czy w tabelach w których trzymam dane userów muszę używać auto numerowania bo np. szybciej działa czy coś w tym stylu ?
8) INDEXy powinienem zakładać na każde pole które później służy do jago przeszukiwania czy tylko te które są praktycznie cały czas wykorzystywane w WHERE ? i czy ma znaczenie w jakiej kolejności ustawiam INDEXy ?
Zdaje sobie sprawę że pewnie odpowiedzi na większość pytań a może wszystkie znalazł bym w manualu ale niestety z ang u mnie cienko.. :/..