Centar za edukaciju-BiH


Stranice (2):1,2

#1 19.08.2020 12:36
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,696


Predmet:PHP PDO ne prihvaca ime table kao parametar
Trebalo mi je jedno dobrih tjedan dana da ovo otkrijem.

ovo ne radi

PreuzmiIzvorni kôd (Text):
  1. $sql='INSERT INTO :imeTable (red.broj, grad, stanovnika)
  2.         VALUES (:redbroj, :grad, :stanovnika)
  3.         ON DUPLICATE KEY UPDATE
  4.         stanovnika=:stanovnika
  5.         ';
  6.                                                                
  7. $stmt = $pdo->prepare($sql);
  8. $stmt->bindValue(':imeTable', $imeTable);
  9. $stmt->bindValue(':redbroj', $redbroj);
  10. $stmt->bindValue(':grad', $grad);
  11. $stmt->bindValue(':stanovnika', $stanovnika);
  12. $stmt->execute();      


jednom je zxz reao da pristupimo sql upitu kao obicnom stringu kojega mozemo kao hocemo, ocemo ga sprijeda ili straga razdvojiti pa iz toga proizlazi da ovo dolje radi:

PreuzmiIzvorni kôd (Text):
  1. $sql='INSERT INTO ' . $imeTable . ' (red.broj, grad, stanovnika)
  2.         VALUES (:redbroj, :grad, :stanovnika)
  3.         ON DUPLICATE KEY UPDATE
  4.         stanovnika=:stanovnika
  5.         ';
  6.                                                                
  7. $stmt = $pdo->prepare($sql);
  8. $stmt->bindValue(':redbroj', $redbroj);
  9. $stmt->bindValue(':grad', $grad);
  10. $stmt->bindValue(':stanovnika', $stanovnika);
  11. $stmt->execute();      

zivot je moja domovina.
↑  ↓

#2 19.08.2020 16:28
Gjoreski Van mreze
Administrator
Registrovan od:02.02.2009
Postovi:1,828


Predmet:Re: PHP PDO ne prihvaca ime table kao parametar
ovo tvoje nije klasican string , nema nista ovakvo :stanovnika u klasican sting
↑  ↓

#3 20.08.2020 11:00
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,696


Predmet:Re: PHP PDO ne prihvaca ime table kao parametar
Citiraj Gjoreski:
ovo tvoje nije klasican string , nema nista ovakvo :stanovnika u klasican sting

ma to je samo primjer, opcenito. To je broj stanovnika.
Glavno je to da se ne prihvaca imeTable kao parametar. To sam htio reci
zivot je moja domovina.
↑  ↓

#4 20.08.2020 23:21
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,611


Predmet:Re: PHP PDO ne prihvaca ime table kao parametar
ovo ON DUPLICATE KEY UPDATE mislim da je visak odnsno nema smisla koliko se sjecam jer kod PDO kada naidje na gresku procedura staje tako da je ovo djaba napisano.
Mogu provjeriti jer nisam 100% siguran.

Moze se napisati i ovako:
$data = [
'redbroj' => $redbroj,
'grad' => $grad,
'stanovnika => $stanovnika];
$sql = "INSERT INTO $imeTable (redbroj, grad, stanovnika) VALUES (:redbroj, :grad, :stanovnika)";
$stmt= $pdo->prepare($sql);
$stmt->execute($data);
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#5 21.08.2020 07:49
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,696


Predmet:Re: PHP PDO ne prihvaca ime table kao parametar
Citiraj zxz:
ovo ON DUPLICATE KEY UPDATE mislim da je visak odnsno nema smisla koliko se sjecam jer kod PDO kada naidje na gresku procedura staje tako da je ovo djaba napisano.
Mogu provjeriti jer nisam 100% siguran.

Moze se napisati i ovako:
$data = [
'redbroj' => $redbroj,
'grad' => $grad,
'stanovnika => $stanovnika];
$sql = "INSERT INTO $imeTable (redbroj, grad, stanovnika) VALUES (:redbroj, :grad, :stanovnika)";
$stmt= $pdo->prepare($sql);
$stmt->execute($data);

znaci ti koristis mysqli, a ne pdo?
zivot je moja domovina.
↑  ↓

#6 22.08.2020 09:09
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,611


Predmet:Re: PHP PDO ne prihvaca ime table kao parametar
Da koristim najcsce mysqli PDO koristim za zabelu sesije.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#7 23.08.2020 10:04
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,696


Predmet:Re: PHP PDO ne prihvaca ime table kao parametar
Citiraj zxz:
Da koristim najcsce mysqli PDO koristim za tabelu sesije.

prenosis imena tabela sesijom, $_SESSION['imeTable'] ?
zivot je moja domovina.
↑  ↓

#8 23.08.2020 19:36
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,611


Predmet:Re: PHP PDO ne prihvaca ime table kao parametar
Ne ne $_SESSION je globlna variabla odnosno super globalna koja se upisuje u tabelu sesije.
E ja imam zasebnu klsu PDO konekcije za ovu tabelu jer ja hocu da mi je dostupna i napr kada se registrujes onda upsujem i tvoj id u tu tabelu a moze i jos stosta.
Mozemo ovo obraditi u zaebnoj temi ako hoces.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#9 24.08.2020 08:09
Avko Van mreze
Administrator
Registrovan od:28.05.2014
Postovi:4,696


Predmet:Re: PHP PDO ne prihvaca ime table kao parametar
Netreba, nisam još na toj razini znanja tako da mislim da nebi pola toga shvatio.
zivot je moja domovina.
↑  ↓

#10 24.08.2020 08:40
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,611


Predmet:Re: PHP PDO ne prihvaca ime table kao parametar
Da bar napomenem.
Ti mozes koristiti globalne variable $_SESSION samo neces imati svoju tablicu gdje to mozes vidjeti.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

Stranice (2):1,2


Sva vremena su GMT +01:00. Trenutno vrijeme: 9: 38 pm.