Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zmienna jako nazwa tabeli w zapytaniu SQL
Forum PHP.pl > Forum > PHP
przonak007
Cześć wszystkim
Mam od kilku dni zagwozdkę mianowicie, chce z comboboxa wybierać z której tabeli będą wyświetlane informacje.

Zrobiłem
  1. $tableContent = '';
  2. $start = $_POST['start'];
  3. $selectStmt = $con->prepare(SELECT * FROM $start);<-- tu jest problem
  4. $selectStmt->execute();
  5. $users = $selectStmt->fetchAll();


Próbowałem
  1. $selectStmt = $con->prepare(SELECT * FROM '$start')
  2. $selectStmt = $con->prepare('SELECT * FROM' $start)
  3. $selectStmt = $con->prepare("SELECT * FROM '$start'")
  4. $selectStmt = $con->prepare(SELECT * FROM '.$start.')

Za każdym razem jest ten sam komunikat: Parse error: syntax error, unexpected ''.$start.'' (T_CONSTANT_ENCAPSED_STRING)

Proszę o pomoc
viking
Poczytaj sobie co robi prepare i jak bindowac paramery. Ten kod gdzieś po lesie chodzi ale blisko leśniczówki nawet nie jest.
b4rt3kk
Teoretycznie, to powinno zwrócić inny błąd, bo stringa zmontowałeś już poprawnego:

  1. "SELECT * FROM '$start'"


Za to niepoprawne zapytanie SQL.

Spróbuj:

  1. "SELECT * FROM {$start}"
franki01
Cytat(viking @ 14.03.2018, 19:05:41 ) *
Poczytaj sobie co robi prepare i jak bindowac paramery. Ten kod gdzieś po lesie chodzi ale blisko leśniczówki nawet nie jest.


PDO nie zbinduje nazw tabel, nazw pól i podobnych - wywala error. Tylko i wyłącznie wartości pól.
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-2024 Invision Power Services, Inc.