Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MySQL]Problem z DELETE
XxmanxX
post
Post #1





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 22.07.2009

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


Witam,
Skrypt niby usuwa rekord o danym $id_alert, nie pluje błędami ale rekord cały czas w bazie siedzi. Może ma ktoś jakiś pomysł gdzie jest błąd?

  1. <?php
  2. $action=$_GET['action'];
  3. $id_alert=$_GET['id'];
  4. switch($action){
  5. case "drop": ?>
  6. Do you really want to delete this record?
  7. <form action="ten_sam_skrypt.php" method="post">
  8. <input type="submit" name="yes" value="Yes" />
  9. <input type="submit" name="no" value="No" />
  10. </form>
  11. <?php
  12. break;
  13. case "edit":
  14. echo "edit";
  15. break;
  16. }
  17. if($_POST['yes']){
  18. $connect=mysql_connect("server","username","password")
  19. or die("Nie moge polaczyc z serwerem");
  20. mysql_select_db("db_name");
  21. $delete_query="DELETE FROM alerts WHERE id_alert = '$id_alert'";
  22. $result=mysql_query($delete_query)
  23. or die (mysql_error());
  24. }
  25. if($_POST['no']) include('skrypt.php');
  26. ?>


id_alert int(11) UNSIGNED No None auto_increment


Pozdrawiam
Go to the top of the page
+Quote Post
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


No a gdzie przekazujesz $id_alert?
Go to the top of the page
+Quote Post
XxmanxX
post
Post #3





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 22.07.2009

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


Jeśli chodzi o to czy wykonuje się ten blok kiedy naciskam yes

  1. if($_POST['yes']){
  2. $connect=mysql_connect("server","username","password")
  3. or die("Nie moge polaczyc z serwerem");
  4. mysql_select_db("db_name");
  5. $delete_query="DELETE FROM alerts WHERE id_alert = '$id_alert'";
  6. $result=mysql_query($delete_query)
  7. or die (mysql_error());
  8. }


to się wykonuje bo pluje bledami jesli jest zla skladnia DELETE lub kiedy specjalnie przestawie parametry polaczenia z baza.
$id_alert przekazuje w klauzuli WHERE ?
pole id_alert ktore jest w bazie równa się $id_alert

r4xz przecież $_POST['yes'] nie jeste wartością 0 tylko dla if'a jest chyba 1, jeśli się nie myle?

Ten post edytował XxmanxX 4.09.2009, 15:29:10
Go to the top of the page
+Quote Post
viking
post
Post #4





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


  1. $id_alert=$_**GET**['id'];
  2. [...]
  3. if($_**POST**['yes']){


Ten post edytował viking 4.09.2009, 15:32:50
Go to the top of the page
+Quote Post
XxmanxX
post
Post #5





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 22.07.2009

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


Sorry ale dalej nie rozumiem (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
viking
post
Post #6





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Dobrze czasami poćwiczyć cierpliwość (IMG:style_emoticons/default/smile.gif) DELETE robisz na _POST, $id_alert jest pobierany dla _GET w związku z czym powieneś tam mieć NOTICE jak włączysz raportowanie błędów. Przekaż go ponownie w formularzu.
Go to the top of the page
+Quote Post
XxmanxX
post
Post #7





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 22.07.2009

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


A jak przekazać go ponownie w formularzu, żeby nie było to widoczne dla user'a ? (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




w polu hidden (ukrytym)
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: 24.08.2025 - 02:03