Witam, mam problem. Mianowicie męczę się z na pewno prostym formularzem. Ale dopiero zaczynam zabawę z tego rodzaju pracą prosiłbym o pomoc. Opis problemu: Chciałbym aby przy wejściu na stronę wyświetliły mi się dane z określonej tablicy z Mysql. Pobieranie wykonałem w pętli, problem pojawił się gdy chciałem dodać do tego przycisk modyfikujący jeden wpis.
'; if(isset($_POST[‘status’])) { $id = $_POST[“id”]; $za = “UPDATE vozidla SET status=0 where id=$id”; mysql_query(“UPDATE vozidla SET status=1 where id=1”); } [/code]
Gdy nacisnę na zmień status nic się nie dzieje, ponieważ nie mam pojęcia jak pobrać do niego dane z tej pętli. Z góry dziękuję za pomoc.
W ten sposób przekażesz id do skryptu w $_POST[‘id’]. No i nie wiem czy pole submit jest wysyłane… Jeżeli nie to musisz ustawić status używając ukrytego pola input:
No i masz lukę SQL Injection w polu id. To:
1 or id like '.*'
powinno zaktualizować wszystkie rekordy. Może się nieco pomyliłem, dawno się nie bawiłem, ale luka jest. ^^ No i ktoś mógłby nie tylko zaktualizować rekordy, ale też np. usunąć bazę, itp. …
Dla każdej danej pobranej od użytkownika (z formularza), a używanej w zapytaniu MySQL, powinieneś dla bezpieczeństwa zastosować funkcję mysql_real_escape_string()