Skocz do zawartości

[MySQL] Statystyka i grafika


RemY

Rekomendowane odpowiedzi

Nie wiem czy jest kretynem bo go nie znam. Ale sprawdze i wrazie czego dzieki za wyjaśnienie. Choć czekaj jeśli dobrze widze to juz była taka propozycja i to właśnie nie działało. MOze masz jakis inny pomysł jak to rozwinąć lub jeśli mozesz to podaj to dokładniej w kodzie.

Pozdrawiam

RemY

Hooters Girls Dig Me

www.goodvibrations.boo.pl

Odnośnik do komentarza
Udostępnij na innych stronach

$nr = $_GET['nr'];

$tresc = mysql_fetch_array(mysql_query("select * from baza_plyt where nr=$nr"));

if (file_exists("../cover/$nr.jpg")) {

echo "<img src=../cover/$nr.jpg>";

} else {

echo "<img src=../cover/brak.jpg>";

}

Jeżeli to nie bedzie działac, a bedzie działać to co podałęs wyżej to znaczy czy duzo skryptów bedzie podatne na sql injection

stopka usunieta z wpoodu wirusa na stronie docelowej

Odnośnik do komentarza
Udostępnij na innych stronach

$nr = $_GET['nr'];
sql injection

no wlasnie.. sql injection.. choc w php w/w kod zadziala :)

warto jednak sie 'zabezpieczyc' i nabrac dobrych nawykow programowania 8)

zrobmy rzutowanie z wartosci jaka dostaniemy na integer (liczbe calkowita). dzieki czemu bedziemy mieli pewnosc ze wartosc parametru jest wartosc ktora przewidzielismy:

intval($_GET['nr']);

albo

settype($_GET['nr'], "integer");

poza tym, radze sprawdzic czy zapytanie do bazy zwrocilo jakis wynik (funkcja mysql_num_rows()).

:)

Odnośnik do komentarza
Udostępnij na innych stronach

warto jednak sie 'zabezpieczyc'
Może jestem przeczulony, ale czy nie widzicie potencjalnego zagrożenia w sytuacji gdy PHP może zapisywać pliki które serwer bezpośrednio serwuje (czyli może je także wykonać jako skrypty)? Z tego powodu (mój były admin jest totalnym maniakiem) przyzwyczaiłem się trzymać obrazki w bazie danych (chociaż to odrobinę mniej wydajne).
nabrac dobrych nawykow programowania
To może przy okazji dobrych nawyków webmasteringu, dlaczego nie zrobić tego w HTMLu czyli zamiast:
echo "<img src=../cover/$nr.jpg>";

proponuję:

echo "<img src="../cover/$nr.jpg" alt="$jakisaltdlaobrazka">";

Odnośnik do komentarza
Udostępnij na innych stronach

Może jestem przeczulony, ale czy nie widzicie potencjalnego zagrożenia w sytuacji gdy PHP może zapisywać pliki które serwer bezpośrednio serwuje (czyli może je także wykonać jako skrypty)? Z tego powodu (mój były admin jest totalnym maniakiem) przyzwyczaiłem się trzymać obrazki w bazie danych (chociaż to odrobinę mniej wydajne).

Odrobinę? Dobry żart! Bardzo dobry! :lol:

Odnośnik do komentarza
Udostępnij na innych stronach

trzymać obrazki w bazie danych (chociaż to odrobinę mniej wydajne).
Odrobinę? Dobry żart! Bardzo dobry! :)

Zrobiłem testy i mi głupio :oops: mój serwer potrafi obsłużyć o połowę więcej zaserwowań zwykłego pliku niż wyrzuconego z MySQLa i co istotne ponad 3 razy więcej niż wyrzuconego z PostgreSQLa. Tak czy siak wielgachny problem bezpieczeństwa zostaje - jego wielkość zależy w dużej mierze od admina, ale pisząc skrypt zapisujący pliki trzeba bardzo uważać.

Odnośnik do komentarza
Udostępnij na innych stronach

Jakiś czas temu dostałem od piotrka krótki kod generujący na stronie listę numerowaną

$zap = mysql_query("select * from tabela");



$lp = 1;

while ($lista = mysql_fetch_array($zap)) {

echo "$lp $lista[pole_z_bazy]<BR>";

$lp++;

}

Moje pytanie jest następujące: jak połączyć to z kodem, który wyświetla Mi na stronie wynik zapytania by w miejscu gdzie w kodzie wpisałem „LISTA NUMEROWANA” pojawiła się lista numerowana generowana przez kod piotrka. Łączyłem te kody na wiele sposobów, kod działa jak należy ale za cholerę nie potrafię go spasować do Mojego. Pewno rozwiązaniem jest $lista[pole_z_bazy] ale jest to ponda moje siły, moje wątłe siły w programowaniu. To fragment kodu, z którym staram się to połączyć:

  print "<tr>";



  while ($rekord = mysql_fetch_assoc ($wynik)) {  

       $nr = $rekord['nr'];

       $wykonawca = $rekord['wykonawca'];

       $album = $rekord['album'];

       $liczba = $rekord['liczba'];

     	print "<td align=center>LISTA NUMEROWANA</td>";

                           print "<td align=left>$wykonawca</td>";

                           print "<td align=left>$album</td>";

                           print "<td align=center>$liczba</td>";

                        print "</tr>n";

}

Proszę o pomoc, za która z góry dziękuje.

Pozdrawiam

RemY

Hooters Girls Dig Me

www.goodvibrations.boo.pl

Odnośnik do komentarza
Udostępnij na innych stronach

Tak czy siak wielgachny problem bezpieczeństwa zostaje - jego wielkość zależy w dużej mierze od admina, ale pisząc skrypt zapisujący pliki trzeba bardzo uważać.

IMO wystarczająco rozwiązuje problem generowanie dla uploadowanych plików losowych nazw i trzymanie tych nazw w bazie i wypluwanie ich spowrotem przez php a nie bezpośrednie wskazywanie. Też trochę wali po serwerze ale zdecydowanie mniej niż BLOBy :)

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności