Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Kasowanie po ID z mySql
freedom.street
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 21.11.2013

Ostrzeżenie: (0%)
-----


Witam Was i zwracsam się o pomoc, walczę i nie mogę dojśc do ładu, bo zwyczajnie nie rozumiem o co chodzi. Jest taki kod :

  1. <?php
  2.  
  3. $dbhost = 'localhost';
  4. $dblogin = 'root';
  5. $dbpass = '';
  6. $dbselect = 'test';
  7. mysql_connect($dbhost,$dblogin,$dbpass);
  8. mysql_select_db($dbselect) or die("Nie udaliiiiii sie polaczyc :)");
  9.  
  10.  
  11.  
  12. $delUser = "DELETE FROM `test`.`user` WHERE `user`.`id_user` =";
  13. $del = mysql_query($delUser);
  14.  
  15. $query = "SELECT * FROM user";
  16. $question = mysql_query($query);
  17. while ($see = mysql_fetch_array($question)) {
  18. echo $see["login"]." | ".$see["opis"],
  19. " ".'<a href="">kasuj</a>';
  20. }
  21.  
  22. ?>


.. i teraz chodzi o to żeby przy każdym pobramym rekordzie z bazy pojawił się link do kasowaniatego rekordu i do edycji tegoż rekordu. Pomożecie, wytłumaczycie albo chociaż nakierujecie jak to zrobić ?

Ten post edytował freedom.street 18.01.2014, 01:18:35
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
com
post
Post #2





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

Ostrzeżenie: (0%)
-----


jak wy się upieracie na to mysql_* ...

Generalnie możesz to zrobić na 2 sposoby przekazując id rekordu GET albo w ukrytym polu POST, co jeszcze Ci sie przyda na pewno isset lub empty
Go to the top of the page
+Quote Post
freedom.street
post
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 21.11.2013

Ostrzeżenie: (0%)
-----


No dobra w tym kierunku mam iść (IMG:style_emoticons/default/questionmark.gif) (IMG:style_emoticons/default/questionmark.gif)

  1. if(isset($_POST['? TU MIEJSCE GDZIE MAM ID W BAZIE?'])){
  2. $id = $_POST['? TU MIEJSCE GDZIE MAM ID W BAZIE ?'];
  3. $delUser = "DELETE FROM `test`.`user` WHERE `user`.`id_user` = $id";
  4. $del = mysql_query($delUser);
  5. $query = "SELECT * FROM user";
  6. $question = mysql_query($query);
  7. while ($see = mysql_fetch_array($question)) {
  8. echo $see["login"]." | ".$see["opis"],
  9. " ".'<a href="">kasuj</a>';
  10. }


Cytat
jak wy się upieracie na to mysql_* ...


... co więc zamiast ?

Ten post edytował freedom.street 18.01.2014, 09:44:05
Go to the top of the page
+Quote Post
Turson
post
Post #4





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Zamiast mysql_ to MySQLi albo PDO.

Ja bym poszedł w tą stronę:
  1. <?php
  2.  
  3. $dbhost = 'localhost';
  4. $dblogin = 'root';
  5. $dbpass = '';
  6. $dbselect = 'test';
  7. mysql_connect($dbhost,$dblogin,$dbpass);
  8. mysql_select_db($dbselect) or die("Nie udaliiiiii sie polaczyc :)");
  9.  
  10.  
  11. if(isset($_GET['user_id'])){
  12. $delUser = "DELETE FROM `test`.`user` WHERE `user`.`id_user` =".$_GET['user_id'];
  13. $del = mysql_query($delUser);
  14. if($del) echo "Usunięto";
  15. else echo "Błąd przy usuwaniu";
  16. }
  17.  
  18. $query = "SELECT * FROM user";
  19. $question = mysql_query($query);
  20. while ($see = mysql_fetch_array($question)) {
  21. echo $see['login']." | ".$see['opis']."<a href=\"&user_id=".$see['id']."\">usuń</a>";
  22. }
  23.  
  24. ?>
  25.  

Pominąłem względy bezpieczeństwa.
Go to the top of the page
+Quote Post
freedom.street
post
Post #5





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 21.11.2013

Ostrzeżenie: (0%)
-----


Mam błąd :

Cytat
Notice: Undefined index: id in E:\xampp\htdocs\projekty\TEST\index.php on line 21


a po kliknięciu na link :

Cytat
Nie znaleziono obiektu!


... link wygląda tak &user_id=
po = nie kieruje do ID rekordu w bazie.

Zabezpieczeń nie potrzeba jak narazie, to prosta praca na zaliczenie ma być ale nie moge tego ogarnąć od jakiegoś czasu już (IMG:style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
Turson
post
Post #6





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Mój kod był tylko przykładem, nie wiem czy masz kolumnę id w bazie albo jak się nazywa
Go to the top of the page
+Quote Post
freedom.street
post
Post #7





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 21.11.2013

Ostrzeżenie: (0%)
-----


Czyli,

  1. if(isset($_GET['user_id']))
// tu wrzucam nazwę tabeli ?

  1. echo $see['login']." | ".$see['opis']."<a href=\"&user_id=".$see['id']."\">usuń</a>";
// a tu dajemy miejsce w tabeli gdzie jest ID użytkownika

tak to ma być ?
Go to the top of the page
+Quote Post
Turson
post
Post #8





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


// tu wrzucam nazwę tabeli ?
>> Nie, nie, nie! Poczytaj czym jest $_GET. Jeśli masz adres index.php?user_id=1, to $_GET['user_id']=1

// a tu dajemy miejsce w tabeli gdzie jest ID użytkownika
>> Tak
Go to the top of the page
+Quote Post
freedom.street
post
Post #9





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 21.11.2013

Ostrzeżenie: (0%)
-----


Gotowe rozwiązanie do rozbudowy, może sie komuś przyda, był zły link dlatego nie działało. Działa w ten sposób.

<?php

  1. $dbhost = 'localhost';
  2. $dblogin = 'root';
  3. $dbpass = '';
  4. $dbselect = 'test';
  5. mysql_connect($dbhost,$dblogin,$dbpass);
  6. mysql_select_db($dbselect) or die("Nie udaliiiiii sie polaczyc :)");
  7.  
  8.  
  9. if(isset($_GET['user_id'])){
  10. $delUser = "DELETE FROM `test`.`user` WHERE `user`.`id_user` =".$_GET['user_id'];
  11. $del = mysql_query($delUser);
  12. if($del) echo "Usunięto";
  13. else echo "Błąd przy usuwaniu";
  14. }
  15.  
  16. $query = "SELECT * FROM user";
  17. $question = mysql_query($query);
  18. while ($see = mysql_fetch_array($question)) {
  19. echo $see['login']."<a
  20. href=\"index.php?user_id=".$see['id_user']."\">usuń</a><br>";
  21. }
  22.  
  23. ?>



Dziękuję za pomoc.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 15:45