Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]PDO Insert into select
Forum PHP.pl > Forum > Przedszkole
@rtur
Witam w jaki sposób z PDO dodać rekord do tabeli pobierając jedną z wartości z innej tabeli?
próbowałem czymś takim, ale nie chce działać...
  1. $stmt = $pdo -> prepare(INSERT INTO tabela1 (id,name) (SELECT sid,:nazwa FROM tabela2 WHERE nazwa=:nazwa));
  2. $stmt -> bindValue(':nazwa', $nazwa, PDO::PARAM_STR);
  3. $stmt -> execute();
trueblue
Musisz podpiąć parametry jako dwa niezależnie pomimo tej samej wartości.
Np. :nazwa1 i :nazwa2

EDIT: No, i zapytanie ma być stringiem, więc albo ' albo ".
@rtur
Dzięki...
  1. $stmt = $pdo -> prepare('INSERT INTO tabela1 (id,name) (SELECT id, :nazwa FROM tabela2 WHERE tytul=:tytul)');
  2. $stmt -> bindValue(':nazwa', $nazwa, PDO::PARAM_STR);
  3. $stmt -> bindValue(':tytul', $tytul, PDO::PARAM_STR);
  4. $stmt -> execute();


nie bardzo chce działać...
trueblue
Zmienna $tytul ma wartość?
@rtur
Dzięki, już działa brakowało jednego apostrofa w kodzie dalej...
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.