Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql]Jak zakodować to w php?
lamcpp
post
Post #1





Grupa: Zarejestrowani
Postów: 372
Pomógł: 2
Dołączył: 10.05.2009

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


Witam, próbuje zakodować funkcjonalność usuwania słówek z bazy danych.

Baza danych ma 3 tabele (problemem jest tu to że trzecia tabela to powiązanie pomiędzy dwoma poprzednimi tabelami i ją trzeba najpierw usunąć)

Oto tabele:
  1. CREATE TABLE tlumaczenie(
  2. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  3. id_slowo_ang INT NOT NULL,
  4. id_slowo_pl INT NOT NULL,
  5. FOREIGN KEY(id_slowo_ang) REFERENCES slowo_ang(id),
  6. FOREIGN KEY(id_slowo_pl) REFERENCES slowo_pl(id)
  7. )ENGINE=InnoDB;
  8.  
  9. CREATE TABLE slowo_pl(
  10. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  11. nazwa VARCHAR(40)
  12. )ENGINE=InnoDB;
  13.  
  14. CREATE TABLE slowo_ang(
  15. id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  16. wymowa VARCHAR(40),
  17. nazwa VARCHAR(40)
  18. )ENGINE=InnoDB;


i teraz żeby usunąć slowo_pl musze najpierw znaleźć id tego słowa w tabeli "tlumaczenie" usunąć rekord z tym id, a następnie znaleźć w tabeli slowo_pl to słowo i usunąć, próbuje wykonać to za pomocą następującego kodu (niestety nie wystepuje zaden błąd ale słowo nie usuwa się z bazy):
  1. <?php
  2. if($_POST['submit'])
  3. {
  4. require_once("baza.php");
  5. $slowko_ang = $_POST['slowko_ang'];
  6. $slowko_pl = $_POST['slowko_pl'];
  7. $query = "DELETE FROM tlumaczenie WHERE id_slowo_pl=(SELECT id FROM slowo_pl WHERE nazwa='$_slowko_pl')";
  8. $objekt -> query($query);
  9.  
  10. $query = "DELETE FROM slowo_pl WHERE nazwa='$slowko_pl'";
  11. $objekt -> query($query);
  12. echo "Słówko zostało usunięte.<br />";
  13. }
  14. ?>
  15.  
  16.  
  17. <h1>Usuń słówko</h1>
  18. <form action="usun_slowko.php" method="post">
  19. Wpisz słowko do usunięcia:<br />
  20. w języku polskim: <input type="text" name="slowko_pl" /><br />
  21. <input type="submit" name="submit" value="usuń"><br />
  22. </form>



czy ktoś mógłby doradzić jak to zrobić, albo chociaż co tu skopałem, ze nie działa tak jak trzeba?

Go to the top of the page
+Quote Post

Posty w temacie


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 - 17:51