![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 319 Pomógł: 0 Dołączył: 11.04.2006 Skąd: Chojnów Ostrzeżenie: (0%) ![]() ![]() |
Mam kolejny problem, otóż gdy kliknę edycja przy jakimś koncie to nie pokazuje błędów[czyt. jest all ok], ale jak zmienie jakieś dane to niby je zmienia ale dalej w bazie danych i w liście kont są stare dane...
kod odpowiadający za edycję
Nie wiem, może coś nie tak wpisałem w kodzie, a może wszystko jest okej (ale wtedy by działało) |
|
|
![]() |
-Gość_nobody- |
![]()
Post
#2
|
Goście ![]() |
Wydaje mi sie, ze w pewnym momencie gubisz ID, dla ktorego ma zostac zrobiony update.
Najpierw masz: Kod if ($_GET['action'] == 'edytuj'){ header ('Location: test.php?mod=administratorzy&action=edit&id='.$_GET['id'].'&PHPSESSID='.session_id().''); } if ($_GET['action'] == 'edit'){ phpinfo (); $id = $_GET['id']; i tutaj przekazujesz ID przez GET i ona jest w tej tablicy. Ale teraz tworzysz FORM'a Kod <form action="help.php?mod=administratorzy&action=edit&PHPSESSID='.session_id().'" method="post"> , przy ktorym nie przekazujesz nigdzie zmiennej przechowujacej ID (ani przez POST ani przez GET). Kod if (isset($_POST['edytuj'])){ // 2 $nick = $_POST['nick']; $pass = $_POST['pass']; $pass_repeat = $_POST['pass_repeat']; $email = $_POST['email']; $name = $_POST['name']; ... ... $id = $_GET['id']; $wykonaj = mysql_query("UPDATE main_admins SET nick='$nick' WHERE id = '$id'"); echo $nick; echo '<p class="text">Wpis zedytowany ! <a href="help.php?mod=administratorzy&PHPSESSID='.session_id().'">Powrót</a></p>'; } } // 2 Pozniej po zatwierdzeniu FORM'a z formularza do tablicy _POST ida tylko zmienne nick, pass, pass_repeat, email i name, ale tablica GET posiada tylko zmienne, do ktorej odwoluje sie FORM (czyli ?mod=administratorzy&action=edit&PHPSESSID='.session_id().'"), ale juz bez ID. Dlatego tez moze byc problem z UPDATE, bo baza danych nie wie ktore dane ma zmienic, bo ID nie istnieje. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 02:02 |