Strona 1 z 1
[PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: sob kwie 03, 2004 6:08 pm
autor: KosmO
Czy jest możliwe wykonanie JEDNEGO skryptu który pobiera dane z bazy danych (np.MySQL) i wyświetla je. Niewiem czy umiejętnie wyjaśniłem o co mi chodzi wieć dołanczam ten schemat.
klikam na link artykół1 --> skrypt pobiera zawartość artykółu1 --> i wyświetla go
klikam na link artykół2 --> TEN SAM skrypt pobiera zawartość artykółu2 --> i wyświetla go
Jeżeli da się coś takiego napisać to prosiłbym o pomoc jak?
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: sob kwie 03, 2004 6:17 pm
autor: Przemysław Szymik
Oczywiscie ze mozna. Może to Ci coś podpowie:
plik1.htm
Kod: Zaznacz cały
<a href="index.php?id=1">ArtykUl nr 1</a>
<a href="index.php?id=2">ArtykUl nr 2</a>
index.php
[php]<?php
$id=$_GET['id'];
$q=mysql_query("SELECT * FROM artykuly WHERE id ='$id'");
...
?>[/php]
Proponuje zwrócić uwagę na zmienną 'id'.
(to tak w skrocie wszystko, ale mysle ze zakumasz

Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: ndz kwie 04, 2004 12:53 pm
autor: FastRed
Po co tworzyć niepotrzebną zmienną?
[php]
<?php
$q=mysql_query('SELECT * FROM artykuly WHERE id ="'.$_GET['id'].'"');
...
?>
[/php]
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: ndz kwie 04, 2004 12:57 pm
autor: Przemysław Szymik
Np. po to zeby sprawdzac co jest w srodku... a nie na slepo pchac do zapytania...
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: ndz kwie 04, 2004 1:16 pm
autor: FastRed
[php]<?php
$id=$_GET['id'];
$q=mysql_query("SELECT * FROM artykuly WHERE id ='$id'");
...
?>[/php]
Gdzie w tym kodzie sprawdzasz czy zmienna zawiera jakieś niebiezpieczne znaki?
przecież zmienna id przyjmuje wartość zmiennej id przesyłanej metodą get. Na jedno wychodzi. Jeśli byś chciał, zeby było bezpieczniej to możesz zrobić tak:
[php]<?php
$q=mysql_query('SELECT * FROM artykuly WHERE id ="'.mysql_escape_string($_GET['id']).'"');
...
?>[/php]
ewentualnie na początek dać jakiegoś "erega" sprawdzającego czy zawartość zmiennej to same litery, czy też cyfry.
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: ndz kwie 04, 2004 1:35 pm
autor: Przemysław Szymik
Oczywiscie ze w tym kodzie nigdzie nie ma sprawdzania zawartosci zmiennej $id, i tez nie pisalem ze jest.
Chodzi o to zeby nie uczyc ludzi wstawiania bezposrednio z tablicy $_GET, $_POST (i reszty) danych, poniewaz beda takie wpadki jak ostatnio w phpBB.
To ze powstaly w PHP tablice typu $_GET nie zwalnia programisty z odpowiedzialnosci za sprawdzanie co przychodzi z nich.
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: ndz kwie 04, 2004 6:08 pm
autor: KosmO
Dzięki jak coś to jeszcze spytam
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: wt kwie 06, 2004 8:09 pm
autor: FastRed
dcooper pisze:Oczywiscie ze w tym kodzie nigdzie nie ma sprawdzania zawartosci zmiennej $id, i tez nie pisalem ze jest.
Chodzi o to zeby nie uczyc ludzi wstawiania bezposrednio z tablicy $_GET, $_POST (i reszty) danych, poniewaz beda takie wpadki jak ostatnio w phpBB.
To ze powstaly w PHP tablice typu $_GET nie zwalnia programisty z odpowiedzialnosci za sprawdzanie co przychodzi z nich.
Hmm, bzdury.
Po co inicjować nową zmienną, kiedy można operować na tej z tablicy POST lub GET. Przecież to Ci tylko zajmuje dodatkowe KB pamięci :/.
Ewentualnym rozwiązaniem jest rekurencja, czyli:
[php]<?php
$id = &$_POST['nazwa']
?>[/php]
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: wt kwie 06, 2004 8:58 pm
autor: Przemysław Szymik
Hmm, bzdura?
zajmuje dodatkowe KB pamięci
Tak, napewno z 5KB pamięci i 3s wykonywania skryptu.
Chyba nie zrozumiales sensu mojego posta. Wiec powtorze: NIE WSTAWIAC BEZPOSREDNIO Z TABLIC TYPU $_POST, $_GET do ZAPYTANIA MYSQL. To ze uzylem tam dodatkowej zmiennej nie ma wiekszego znaczenia, za to bezposrednie uzycie danych z tablicy wejsciowej jest juz conajmniej grozne.
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: śr kwie 07, 2004 7:26 am
autor: dzieciol4
Możesz przedstawić na poparcie swojej tezy jakies argumenty dcooper? Np. może jaskiś artykuł lub post na forum? O ile się nie myle to ostatni błąd phpbb nie polegał na tym, że wstawili tablicę bezpośrednio ale na tym, że użyli niepotrzebnego znaku łączenia .= ?
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: śr kwie 07, 2004 8:05 am
autor: KosmO
Jak ma wyglądać struktura bazy danych i jak napisać skrypt który dodaje artykóly do bazy
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: śr kwie 07, 2004 9:05 pm
autor: Krzysztof Aszkiełowicz
Panowie dcooper'owi chodziło o sprawdzanie zawartosci zmiennej pochodzącejz formularza takimi funkcjami jak htmlspecialchars lub strip_tags, lub podobne. Przed dodaniem tego do SQL'a lepiej sprawdzic, co userek wpisał. Nie mamy tu rozmawiać o czasie wykonywania skryptu czy zużycia pamięci.
KosmQ my mamy za Ciebie ten skrypt napisać?
Wiesz, zacznij czytać artyk
uły na
http://php.webinside.pl 
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: ndz kwie 11, 2004 8:07 am
autor: KosmO
KosmQ my mamy za Ciebie ten skrypt napisać?
Nie ucze się pisać takie skrypy
Re: [PHP] Jeden skrypt pobierający i wyświetlający dane z bazy
: ndz kwie 11, 2004 9:03 am
autor: Przemysław Szymik
Krzysztof-> dzieki, bo jak przeczytalem wczesniejszeg posta, to rece rozlozylem. A tak wogole to Wesolego Jajka to all;)