Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Dynamiczne generowanie zapytania SQL (uciąć)
Forum PHP.pl > Forum > Przedszkole
seba22
Witam,

Przygotowuje kod w który będzie wykonywać dynamiczne zapytanie do serwera SQL układając je na podstawie dostarczonych przez użytkownika danych.

W skrócie mam taki kawałek kodu PHP.

Założenie : Zmienna TAGI ma usunięte znaczniki MYSQL więc teoretycznie jest bezpieczna.
Jej składnia wygląda tak:

"Ala Zielony Kot"

  1. <?php
  2. $zapytanieszukaj='';
  3. $rozkladt  = $tagi;
  4. $kawalekt = explode(" ", $rozkladt);
  5. $wynik=count($kawalekt);
  6.  
  7. for ($i = 0; $i <= $wynik-1; $i++) {
  8. $zapytanieszukaj=$zapytanieszukaj."WHERE 'tagi' LIKE %".$kawalekt[$i].'% AND ';
  9. }
  10. echo($zapytanieszukaj);
  11. ?>

I dostaje w odpowiedzi:

  1. WHERE 'tagi' LIKE %jeden% AND WHERE 'tagi' LIKE %dwa% AND WHERE 'tagi' LIKE %trzy% AND


Czy można jakoś skasować to ostatnie and ?

Jakaś komenda typu cute -3 znaki ?

Ew co o tym sądzicie ?
batman
  1. <?php
  2. $zapytanieszukaj = "";
  3.  
  4. //......
  5.  
  6. for($i = 0; $i <= $wynik-1; $i++) {
  7.    $zapytanieszukaj .= "AND tagi LIKE '%".$kawalekt[$i]."%'";
  8. }
  9.  
  10. if(strlen($zapytanieszukaj) > 0) {
  11.    $zapytanieszukaj = "WHERE ".substr($zapytanieszukaj, 4);
  12. }
  13. ?>
seba22
Dziękuję o to mi chodziło kolego.

Jesteś wielki.
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.