Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Niepoprawne zapytanie: Unknown column 'artist_id' in 'where clause'
Forum PHP.pl > Forum > Przedszkole
powertee
Witam mam problem, wydaje mi sie ze kod jest wporządku ale wyświetla mi coś takiego:

Niepoprawne zapytanie: Unknown column 'artist_id' in 'where clause'

szukałem troche i znalazłem ze dzieje sie tak z przejsciaz mysql4 na mysql 5.
podobno da sie przerobić kod zeby działał a ja nie mamam pojęcia jak...
no i teraz stare dobre hasło: POMOŻECIE?questionmark.gif rolleyes.gif

  1. <?
  2. $link = mysql_connect("localhost", "xxx", "xxx")
  3. or die("nie udalo sie poilaczyc: " . mysql_error());
  4. mysql_select_db("baza", $link)
  5. or die("cos jest nie tak!!! " . mysql_error());
  6.  
  7. $convert['artist'] = 'wybranego wykonawce' ; $convert['song'] = 'wybrany utwór';
  8.  
  9. /* USUWANIE */
  10.  
  11. if (!isset($_GET['do']) && $_GET['do'] != 1) {
  12. ?>
  13. <p align="center" style="color:#FF0000">
  14. Czy napewno chcesz usunąć 
  15. <?php
  16. echo $convert[$_GET['type']]; ?>?<br>
  17. <a href="<? echo $_SERVER['REQUEST_URI']; ?>&do=1">tak</a>
  18.  lub <a href="index.php">nie</a>
  19. </p>
  20. <?
  21. } else 
  22. { 
  23. if ($_GET['type'] == "artist") {
  24. $artista = "UPDATE song
  25. SET id_artist_song = '0'
  26. WHERE id_artist_song = '" . $_GET['id'] . "'";
  27. $result = mysql_query($artista)
  28. or die("Niepoprawne zapytanie xxx : " . mysql_error());
  29. }
  30. $sql = "DELETE FROM " . $_GET['type'] . "
  31. WHERE " . $_GET['type'] . "_id = '" . $_GET['id'] . "'
  32. LIMIT 1";
  33. echo "<!--" . $sql . "==>";
  34.  
  35. $result = mysql_query($sql) or die("Niepoprawne zapytanie: " . mysql_error());
  36. ?>
  37. <p align="center" style="color:#FF0000">
  38. Wybrany <? echo $convert[$_GET['type']]; ?> został usuniety.
  39. <a href="index.php"> Powrót do listy</a></p>
  40. <?
  41. }
  42. ?>
Danone
moim zdaniem tutaj masz:

  1. WHERE " . $_GET['type'] . "_id = '" . $_GET['id'] . "'


a powinno być
  1. WHERE '" . $_GET['type'] . "'_id = '" . $_GET['id'] . "'




poza tym używaj bbcode smile.gif, bo tak jak masz teraz, to nawet nie chce się czytać smile.gif
powertee
jak zmienie tak jak ty mówisz tozgłasz :
Niepoprawne zapytanie: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '_id = ' 3' LIMIT 1' at line 2
Danone
Troszkę rozpędziłem się z odpowiedzią smile.gif

Wychodzi na to, że nie masz takiej kolumny jak artist_id.

Masz ją w ogóle? smile.gif
powertee
nie mam mam id_artist nie wiem skąd mysql wzioł wogule artist_id
Daimos
no wlasnie nie wzial, dlatego jest problem
nie ma jej, a probojesz ja wywolac

  1. <?php
  2. $sql = "DELETE FROM " . $_GET['type'] . "
  3. WHERE " . $_GET['type'] . "_id = '" . $_GET['id'] . "'
  4. LIMIT 1";
  5. ?>


w powyzszym kodzie gdy masz $_GET['type']=artists
to logiczne ze odwolujesz sie do kolumny artists_id
powertee
to jak przerobić ten skrypt zeby zamiast kolumny
  1. <?php
  2. artist_id
  3. ?>
wywołać kolumne
  1. <?php
  2. id_artist
  3. ?>
questionmark.gif
webdice
  1. <?php
  2. $sql = "DELETE FROM " . $_GET['type'] . "
  3. WHERE id_" . $_GET['type'] . " = '" . $_GET['id'] . "'
  4. LIMIT 1";
  5. ?>
powertee
Działa!! Dzieki wszystkim... Jestem początkujący ale sie ucze... pozdro
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.