Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Usuwanie uzytkownika z bazy danych
Forum PHP.pl > Forum > Bazy danych > MySQL
shalafi4444
Dzien dobry mam maly problem mam baze o nazwie 'user' i w niej tabele users i chce w panelu admina poprzez zaznaczenie checkbox miec mozliwosc usuniecia uytkownika. Niby jest wszystko ok, ponizej kod do admina z formularzem do wysiwetlania zawartosci tabeli users.

  1. <?php
  2. ?>
  3. <?php
  4. $user = $_POST['form_login'];
  5. $pass = md5($_POST['form_password']);
  6. $nick = $_POST['form_nick'];
  7.  
  8.  
  9. ?>
  10.  
  11.  
  12.  
  13. ------------------ 
  14. -style i inne pierdoly wywalilem
  15.  
  16.  
  17. <body>
  18.  
  19.  
  20. <?php
  21. mysql_connect("localhost", "root", "krasnal")
  22. or die ("Nie polaczylem sie z baza");
  23. mysql_select_db ("user") or
  24. die ("nie moze sie polaczyc z uploadem");
  25.  
  26.  
  27. $wynik=mysql_query("SELECT * FROM users;") or 
  28. die ("Blad w pytaniu");
  29.  
  30. echo "<form action='usun_uzyt.php' method='GET'>";
  31. echo "<table cellpadding=5 border=1 width=80 >";
  32. echo "<tr bgcolor='#CCCCCC'><td><b>User</b></td>";
  33. echo "<td><b>Password</b></td><td><b>Nick</b></td><td><b>Usuń</b></td></tr>";
  34. while ($rekord = mysql_fetch_assoc ($wynik)) {
  35.  
  36. //$IdUzytkownik = $rekord['IdUzytkownik'];
  37.  
  38. $user = $rekord['user'];
  39. $pass = $rekord['pass'];
  40. $nick = $rekord['nick'];
  41.  
  42.  
  43. echo "<tr><td width='80'>".$user."</td><td>".$pass."</td> <td>".$nick."</td></tr>";
  44.  
  45. echo "<td><input type='checkbox' name=IdUzytkownik[] value=".$rekord['IdUzytkownik']."></td></tr>";
  46.  
  47.  
  48.  
  49.  
  50. }
  51.  
  52. echo "</table>";
  53.  
  54. echo "<table bgcolor='#CCCCCC' align='left' border='2' >";
  55. echo "<tr><td colspan='2' align='left'><input type='submit' value='Usuń zaznaczonego uzytkownika'>";
  56. echo "</td></tr>";
  57. echo "</table></form>";
  58.  
  59.  
  60.  
  61.  
  62.  
  63. ?>
  64. <BR>
  65.  
  66.  
  67. </body>
  68. </html>
  69.  
  70. <?
  71. ?>


tutaj wyglada ze jest ok, jak jest napisane powyzej zaznaczam checkbox i i wciskam usun uzytkownika przechodzi di pliku usun.uzyt.php ponizej kod tego:

  1. <?php
  2. //$IdUzytkownik = $_POST['IdUzytkownik'];
  3.  
  4. $user = $_POST['form_login'];
  5. $pass = md5($_POST['form_password']);
  6. $nick = $_POST['form_nick'];
  7.  
  8. ?>
  9. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  10. <html>
  11. <HEAD>
  12. <meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
  13. <META HTTP-EQUIV="Content-Language" CONTENT="pl">
  14. <meta name="Copyright" content="&copy; 2006">
  15. <script language="Javascript" type="text/javascript">
  16. defaultStatus = 'Usuwanie @ $SERVER_NAME';
  17. </script>
  18. <TITLE>Usuniecie uzytkownika z bazy @ $SERVER_NAME</TITLE>
  19. <STYLE TYPE="text/css">
  20. <!--
  21. BODY { font-size: 8pt; font-family: "Tahoma, 'Arial CE', Arial, Helvetica, sans-serif"; background-color: #E8E8E8; }
  22. EOT;
  23. echo ".TD1 { background-color: $kolor_tla2; text-align: center; font-size: 8pt; font-family: "Tahoma, 'Arial CE', Arial, Helvetica, sans-serif"; }n";
  24. echo ".TD2 { background-color: $kolor_tla; text-align: right; font-size: 8pt; font-family: "Tahoma, 'Arial CE', Arial, Helvetica, sans-serif"; }n";
  25. echo ".TD3 { background-color: $kolor_tla; text-align: left; font-size: 8pt; font-family: "Tahoma, 'Arial CE', Arial, Helvetica, sans-serif"; }n";
  26. echo "TD { background-color: $kolor_tla; text-align: center; font-size: 8pt; font-family: "Tahoma, 'Arial CE', Arial, Helvetica, sans-serif"; }n";
  27.  
  28. echo <<< EOT
  29. A { text-decoration: none } 
  30. -->
  31. </STYLE>
  32. </head>
  33.  
  34. <body>
  35.  
  36.  
  37. <?php
  38. mysql_connect("localhost", "root", "krasnal")
  39. or die ("Nie polaczylem sie z baza");
  40. mysql_select_db ("user") or
  41. die ("nie moze sie polaczyc z uploadem");
  42.  
  43. $IdUzytkownik= $_GET['IdUzytkownik'];
  44.  
  45. if($IdUzytkownik==NULL){
  46.  
  47. echo '<font size=8><center>zaznacz jakiegos użytkownika do skasowania</center></font><br>';
  48. echo "<font size=8><a href='admin.php'>Wróć</a></font>";
  49.  
  50. }
  51.  
  52. else {
  53.  
  54. while ( list( $key, $val ) = each( $IdUzytkownik ) ) {
  55.  
  56. $del=mysql_query("DELETE FROM users WHERE IdUzytkownik=$val");
  57.  
  58. }
  59.  
  60. echo "<font size=8><center>Usunięto użytkownika z bazy</center></font><br>";
  61.  
  62.  }
  63.  
  64. echo "<font size=8><a href='admin.php'>Wróć</a></font>";
  65.  
  66. ?>
  67. </body>
  68. </html>

----------------------------

wychodza dwie wersje albo mi wywala cala tabele jak w wersji $del=mysql_query("DELETE FROM users WHERE IdUzytkownik=$val"); wywale i zostawie $del=mysql_query("DELETE FROM users bez reszty, natomiast jak zostawie calosc, ktora moim zaniem jest ok to pisze ze wywalilo ale jednak uztkownik nadal jest. Jakas pomoc, sugestia?? Nigdy nie wklejalem calego kodu wiec jak wyszlo zle to sorry tongue.gif
dr_bonzo
Prosze poprawic post przez uzycie bbcode [php]
spryciula
spróbuj tak, weź $val w ciapki '

  1. $del=mysql_query("DELETE FROM users WHERE IdUzytkownik= '$val' ");
shalafi4444
Cytat(spryciula @ 2.02.2007, 20:34:27 ) *
spróbuj tak, weź $val w ciapki '

  1. $del=mysql_query("DELETE FROM users WHERE IdUzytkownik= '$val' ");


Niestety dalej uparcie nic sad.gif
spryciula
sprawdź co masz w zmiennej
$IdUzytkownik= $_GET['IdUzytkownik'];
bo ja nigdzie nie znalazłem, gdzie ty przekazujesz GET'EM(czyli w url'u) tę wartość, może spróbuj ją wziac POST'EM
ewentualnie wyswietl sobie co masz w zmiennej $val,


lub problemu szukaj tutaj

  1. <?php
  2. echo "<td><input type='checkbox' name=IdUzytkownik[] value=".$rekord['IdUzytkownik']."></td></tr>";
  3. ?>


jak to nie zadziala, to pokaz tabele
shalafi4444
Cytat(spryciula @ 2.02.2007, 22:56:20 ) *
sprawdź co masz w zmiennej
$IdUzytkownik= $_GET['IdUzytkownik'];
bo ja nigdzie nie znalazłem, gdzie ty przekazujesz GET'EM(czyli w url'u) tę wartość, może spróbuj ją wziac POST'EM
ewentualnie wyswietl sobie co masz w zmiennej $val,
lub problemu szukaj tutaj

  1. <?php
  2. echo "<td><input type='checkbox' name=IdUzytkownik[] value=".$rekord['IdUzytkownik']."></td></tr>";
  3. ?>


jak to nie zadziala, to pokaz tabele





To moja tabela juz sie sam zakrecilem w tym, i juz niczego nie jestem pewien jutro chyba od poczatku wezme to bo teraz mi juz mozg wyparowal :


  1. CREATE TABLE `users` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `user` varchar(50) NOT NULL DEFAULT '',
  4. `pass` varchar(50) NOT NULL DEFAULT '',
  5. `nick` varchar(50) NOT NULL DEFAULT '',
  6. PRIMARY KEY (`id`)
  7. ) TYPE=MyISAM AUTO_INCREMENT=17 ;



Dobra juz chodzi doszedlem dzieki podpowiedzi aby zapodac baze tongue.gif Odwolywalem sie caly czas do IdUzytkownik zamiast normalnie jak w tabeli do id teraz juz normalnie chodzi, dzieki za pomoc biggrin.gif
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.