Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> automatyczne generowanie zapytania sql - problem, problem z przecinkami
dado
post
Post #1





Grupa: Zarejestrowani
Postów: 194
Pomógł: 2
Dołączył: 12.04.2004
Skąd: Częstochowa

Ostrzeżenie: (10%)
X----


skrobnąłem kod którego zadaniem jest automatyczne generowania zapytania UPDATE z tablicy $_POST formularza:
zmienna $_POST[n] zawiera nazwy pól w tabeli baz danych, przykładowo:
  1. <?php
  2. $_POST[n]=&#092;"lp|nazwa|var\";
  3. ?>


  1. <?php
  2. //wyodrebnienie nazw pola
  3.     $nazwa = explode(&#092;"|\", $_POST[n]);
  4.  
  5. //początek zapytania
  6.     $sql .= &#092;"UPDATE \" . $_POST[tbll] . \" SET&nbsp;\";
  7.     
  8.     for($i=0; $i<=count($nazwa)-2; $i++)
  9.     {
  10. //nazwa pola
  11.     $nn=$nazwa[$i];
  12.  
  13. //liczba pól
  14.     $llp=count($nazwa)-2;
  15.  
  16. //budowanie sql-a
  17.     $sql .= &#092;"  &nbsp;\".$nazwa[$i].\" = '\".$_POST[$nn].\"'\";
  18.     
  19.  
  20. //mój nieudolny patent na przecinki
  21.     if(!($i==$llp)){$p=&#092;", \";}else{$p=\"\";}
  22.  
  23. //dodanie przecinka
  24.     $sql .= &#092;"$p\";
  25.     }
  26.  
  27. //zakonczenie petli i dodnie where
  28.     $sql .=&#092;" WHERE lp='\".$_POST[idd].\"'\";
  29.  
  30. // no i wio
  31.     $query=mysql_query($sql)or die(mysql_error());
  32. ?>


problem jest z przecinkami w zapytaniu po ostanim polo przed klauzorą WHERE nie może być tego przecinka nie wiem jak zrobić żeby go nie było . Proszę o podpowiedź bo wena mnie opuściła.

wywala błąd:
Cytat
You have an error in your SQL syntax near '   lp = '1',  nazwa = 'title',  var = '---==SKUP ZŁOMA ' at line 1


Ten post edytował dado 18.01.2005, 10:36:53
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 21.08.2025 - 18:50