Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Formularz + rozwijana lista
Forum PHP.pl > Forum > Przedszkole
piootras82
Witam,
mam problem z formularzem, w którym mam rozwijana listę użytkowników pobierana z tabeli USERS z bazy.

Dane zaciągają się poprawnie. Jednak po wysłaniu formularza, podstrona nie odbiera zaznaczonych i wysłanych danych.
Co robię źle?
Przeglądałem podobne tematy ale nie znalazłem takiej fomuły zapisu sciana.gif


user_del.php
  1. <html>
  2. <body>
  3.  
  4. <h2>Usuwanie użytkownika</h2>
  5. <form method="POST" action="admin.php?id=del_wyk">
  6.  
  7. <?php
  8.  
  9. $zapytanie = mysql_query ("SELECT * FROM users ORDER BY imie ASC");
  10. echo '<select name="dane">';
  11. echo '<option value="id">Wybierz użytkownika, którego chcesz usunąć!</option>';
  12. while($option = mysql_fetch_assoc($zapytanie))
  13. {
  14. echo '<option value=>'.$option['imie'].' '.$option['nazwisko'].' '.$option['user_login'].'</option>';
  15. }
  16. echo '</select>';
  17.  
  18. ?>
  19.  
  20. <input type="submit" value=" Usuń " >
  21. </form>
  22. </body>
  23. </html>
  24.  




user_del_wyk.php (na razie chce tylko wyświetlić dane)

  1. <?php
  2. $del = $_POST['dane'];
  3. echo $del;
  4.  
  5.  
  6. ?>
  7.  
jasin
Czy czasem
  1. echo '<option value=>'.$option['imie'].' '.$option['nazwisko'].' '.$option['user_login'].'</option>';

nie wypluje coś w postaci
  1. <option value=> Jan Kowalski kowal</option>

questionmark.gif?

Powinno być np:
  1. echo '<option value="'. $option['id'] .'">'.$option['imie'].' '.$option['nazwisko'].' '.$option['user_login'].'</option>';


Kshyhoo
Operuj lepiej na ID usera i może spróbuj tak:
  1. echo '<select name="usun_user">
  2. <option value=""> Wybierz usera do usunięcia </option>';
  3. while ($option = mysql_fetch_array($zapytanie)) {
  4. // tu trzeba dać filtrację danych z bazy ;)
  5. $id_user = $option['id_user'];
  6. $imie = $option['imie'];
  7. $nazwisko = $option['nazwisko'];
  8. $user_login = $option['user_login'];
  9. if ($id_user2 == $id_user)
  10. echo '<option value='.$id_user.' selected>'.$option['imie'].' '.$option['nazwisko'].' - '.$option['user_login'].'</option>';
  11. else
  12. echo '<option value='.$id_user.'>'.$option['imie'].' '.$option['nazwisko'].' - '.$option['user_login'].'</option>';
  13. }
  14. echo '</select>';

Z palca, więc może jakaś literówka się znaleźć winksmiley.jpg

EDIT. Teraz powinno działać...
piootras82
A w jaki sposób odebrac te dane żeby można było wykonać polecenie do bazy MYSQL żeby wybrany użytkownik został usunięty worriedsmiley.gif

@Kshyhoo
Nie za bardzo rozumiem Twój kod wstydnis.gif

Filtracja danych - chodzi Ci o zapytanie tak?
  1. $zapytanie = mysql_query ("SELECT * FROM users ORDER BY imie ASC");


Z kąd są zmienne $id_log oaz $id_log_k i co oznaczają?

Kshyhoo
Poczytaj sobie o filtracji danych pochodzących z zapytania do bazy danych i danych pochodzących z tablic POST, GET, itp.
Odebranie danych z $_POST jest łatwe, np:
  1. if (isset($_POST['usun_user'] {
  2. // i tu zapytanie do bazy:
  3. mysql_query("DELETE FROM users WHERE user_id='$user_id'");
  4. }

Co do tych dwóch zmiennych, walnąłem babola, już poprawiam winksmiley.jpg
piootras82
Ok.
Porównujesz dwie zmienne
$id_user2 i $id_user
ale nie wiem z kąd jest $id_user2 ?

Czy mógłbym Cię prosić o wyjaśnienie tego IFa?

Szukam też o filtracji danych pochodzących z zapytania ale nie mogę nic znaleźć. Może szukam czegoś innego.
Chętnie zobaczyłbym jakiegoś tutoriala albo manual bo nie rozumiem niestety Twojego kodu wstydnis.gif
Nie chodzi mi o przeklepanie kodu - bo nawet to mi nic nie da bo nie wiem co i gdzie wstawić a chciałbym wiedzieć co z czego wynika biggrin.gif
Kshyhoo
Po prostu, if musi zawierać jakiś warunek (możesz w ten sposób porównać np. dane pochodzące z dwóch tabel) a $id_user = $option['id_user']; - czyli dane z zapytania do bazy danych przypisane zmiennej.
Co do filtracji, jest sporo w necie, jak np: to.

I na marginesie: skąd.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.