Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z edycją rekordów
Forum PHP.pl > Forum > Przedszkole
powertee
mam problem z edycją rekordów, min. wywala mi błąd:
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 'WHERE id_song '21')' at line 8

problwm lezy w cześci UPDATE bo bo z dodawaniem rekordów nie ma problemów

  1. <?
  2. $link = mysql_connect("localhost", "php", "klops123")
  3. or die("nie udalo sie poilaczyc: " . mysql_error());
  4. mysql_select_db('baza', $link)
  5. or die("do dupy!!!!! " . mysql_error());
  6. switch ($_GET['action']) {
  7. case "edit";
  8.  switch ($_GET['type']){
  9.  case "song";
  10. $sql = "UPDATE song SET
  11. title = '" . $_POST['title'] . "' ,
  12. id_artist_song = '" . $_POST['id_artist_song'] . "' ,
  13. rok_prem = '" . $_POST['rok_prem'] . "' ,
  14. album = '" . $_POST['album'] . "' ,
  15. kod = '" . $_POST['kod'] . "' ,
  16. uwagi = '" . $_POST['uwagi'] . "' 
  17. WHERE id_song '" . $_GET['id'] . "'";
  18.  break;
  19. }
  20. break;
  21. case "add";
  22. switch ($_GET['type']) {
  23. case "song";
  24. $sql = "INSERT INTO song
  25. (title,
  26. id_artist_song,
  27. rok_prem,
  28. album,
  29. kod,
  30. uwagi)
  31. VALUES
  32. ('" . $_POST['title'] . "',
  33. '" . $_POST['id_artist_song'] . "',
  34. '" . $_POST['rok_prem'] . "',
  35. '" . $_POST['album'] . "',
  36. '" . $_POST['kod'] . "',
  37. '" . $_POST['uwagi'] . "')";
  38. break;
  39. }
  40. break;
  41. }
  42. if (isset($sql) && !empty($sql)) {
  43. $resul = mysql_query($sql)
  44. or die("niepoprawne zapytanie: " . mysql_error());
  45. ?>
  46. <p align="center" style="color:#FF0000">
  47. Wykonane. <a href="index.php">lista</a></p>
  48. <?
  49. }
  50. ?>
Hazel
  1. UPDATE song SET
  2. title = '" . $_POST['title'] . "' ,
  3. id_artist_song = '" . $_POST['id_artist_song'] . "' ,
  4. rok_prem = '" . $_POST['rok_prem'] . "' ,
  5. album = '" . $_POST['album'] . "' ,
  6. kod = '" . $_POST['kod'] . "' ,
  7. uwagi = '" . $_POST['uwagi'] . "'
  8. WHERE id_song = '" . $_GET['id'] . "';


edit: racja, kossa, sorka.
Neeke
nie tak =
  1. $sql = "UPDATE song SET title = '" . $_POST['title'] . "' , id_artist_song = '" . $_POST['id_artist_song'] . "' , rok_prem = '" . $_POST['rok_prem'] . "' , album = '" . $_POST['album'] . "' , kod = '" . $_POST['kod'] . "' , uwagi = '" . $_POST['uwagi'] . "' , WHERE id_song '" . $_GET['id'] . "')";


a tak

  1. $sql = "UPDATE song SET title = '" . $_POST['title'] . "' , id_artist_song = '" . $_POST['id_artist_song'] . "' , rok_prem = '" . $_POST['rok_prem'] . "' , album = '" . $_POST['album'] . "' , kod = '" . $_POST['kod'] . "' , uwagi = '" . $_POST['uwagi'] . "' , WHERE id_song '" . $_GET['id'] ;


zwracajcie troche uwage na to jak piszecie a nie odrazu lecicie na forum sa ludzie co maja ciezsze problemy
kossa
  1. <?php
  2. $sql = "UPDATE song SET
  3. title = '" . $_POST['title'] . "' ,
  4. id_artist_song = '" . $_POST['id_artist_song'] . "' ,
  5. rok_prem = '" . $_POST['rok_prem'] . "' ,
  6. album = '" . $_POST['album'] . "' ,
  7. kod = '" . $_POST['kod'] . "' ,
  8. uwagi = '" . $_POST['uwagi'] . "' ,
  9. WHERE id_song '" . $_GET['id'] . "')";
  10. ?>



masz przecinek przed where

Łukasz
powertee
Cytat(Neeke @ 19.01.2008, 18:07:51 ) *
zwracajcie troche uwage na to jak piszecie a nie odrazu lecicie na forum sa ludzie co maja ciezsze problemy


no widocznie to jest duzy problem bo sprawdziłem wszystkie mozliwości a błąd jest dalej
Wieviór
Jaki teraz masz kod?
powertee
  1. <?
  2. $link = mysql_connect("localhost", "php", "klops123")
  3. or die("nie udalo sie poilaczyc: " . mysql_error());
  4. or die("do dupy!!!!! " . mysql_error());
  5. switch ($_GET['action']) {
  6. case "edit";
  7.  switch ($_GET['type']){
  8.  case "song";
  9. $sql = "UPDATE song SET
  10. title = '" . $_POST['title'] . "' ,
  11. id_artist_song = '" . $_POST['id_artist_song'] . "' ,
  12. rok_prem = '" . $_POST['rok_prem'] . "' ,
  13. album = '" . $_POST['album'] . "' ,
  14. kod = '" . $_POST['kod'] . "' ,
  15. uwagi = '" . $_POST['uwagi'] . "' 
  16. WHERE id_song '" . $_GET['id'] . "'";
  17.  break;
  18. }
  19. break;
  20. case "add";
  21. switch ($_GET['type']) {
  22. case "song";
  23. $sql = "INSERT INTO song
  24. (title,
  25. id_artist_song,
  26. rok_prem,
  27. album,
  28. kod,
  29. uwagi)
  30. VALUES
  31. ('" . $_POST['title'] . "',
  32. '" . $_POST['id_artist_song'] . "',
  33. '" . $_POST['rok_prem'] . "',
  34. '" . $_POST['album'] . "',
  35. '" . $_POST['kod'] . "',
  36. '" . $_POST['uwagi'] . "')";
  37. break;
  38. }
  39. break;
  40. }
  41. if (isset($sql) && !empty($sql)) {
  42. $resul = mysql_query($sql)
  43. or die("niepoprawne zapytanie: " . mysql_error());
  44. ?>
  45. <p align="center" style="color:#FF0000">
  46. Wykonane. <a href="index.php">lista</a></p>
  47. <?
  48. }
  49. ?>
Wieviór
  1. WHERE id_song '" . $_GET['id'] . "'";


Nie brakuje równasia?:

  1. WHERE id_song = '" . $_GET['id'] . "'";
Hazel
Proponuję zakończyć rozmowę, wynik jest praktycznie w 5 postach - chodzi o znak równości i przecinek. Taki spam przy takim problemie... dry.gif
Neeke
$resul = mysql_query($sql)or die("niepoprawne zapytanie: " . mysql_error());


a wpisz tak


$resul = mysql_query($sql)or die("niepoprawne zapytanie: " . mysql_error()."<br>". $sql);

moze czegos ci nieprzkazuje obecnie podejzane dlamnie jest te $_GET['id'] wstaw tamto i powiedz co ci wywali
powertee
tobra działa thx.
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.