Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]implode w zapytaniu sql
Larges
post
Post #1





Grupa: Zarejestrowani
Postów: 333
Pomógł: 16
Dołączył: 13.05.2008
Skąd: Łódź

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


Witam, zmienne nie będące typu int należy oplatać w cudzysłów, nie bardzo potrafię to uczynić z następującą linijką kodu.

  1. $sql = "SELECT " . implode(",", $tablica) . " FROM $tabela";


Dzięki za pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bmL
post
Post #2





Grupa: Zarejestrowani
Postów: 301
Pomógł: 25
Dołączył: 15.07.2007
Skąd: Olsztyn

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


Zakładam że pewnie nie o to (IMG:style_emoticons/default/winksmiley.jpg) bo skoro imploduje je używając przecinka to są to nazwy kolejnych pół docelowe zapytanie wyglądało by tak:
  1. SELECT `pole1, pole2, pole3, pole4` ...

a powinno być oczywiście tak
  1. SELECT `pole1`, `pole2`, `pole3`,`pole4`


Chociaż te cudzysłowy nie są konieczne jeżeli nazwy pól nie są zarezerwowane dla składni języka SQL np. pole może się nazywać "where" wtedy trzeba je opleść cudzysłowami.

Zarzucę gotowym kodem, pisany z palca więc nie gwarantuję że zadziała (IMG:style_emoticons/default/biggrin.gif)
  1. function oplec (&$element1, $klucz, $znak)
  2. {
  3. $element1 = $znak.$element1.$znak;
  4. }
  5.  
  6. array_walk ($tablica, 'oplec', '`');
  7.  
  8. $sql = "SELECT " . implode(",", $tablica) . " FROM $tabela";


Ten post edytował bmL 5.09.2009, 00:47:03
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: 12.10.2025 - 12:15