Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)
Avatar
Dominik Gavrecký:25.4.2015 22:30

Zdravím komunitu,

Chcel by som sa vás opýtať. Poslednou dobov ma mysqli začalo celkom obmedzovať tak som sa rozhodol prejsť na PDO. Je to zo začiatku ako španielská dedina a preto sa na vás obraciam s mojim problém.

<?php

$host = "localhost";
$user = "root";
$password = "";

$connect = new PDO('mysql:host=localhost;dbname=codepaste', $user, $password);
$connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$query = $connect->prepare("SELECT * FROM codepaste");
$row = $query->fetchAll();

print_r($row);

?>

Problém je že mi vráti prázdny Array. Prípadne mi pozrite connect rád sa priučím.

Ďakujem

Editováno 25.4.2015 22:32
Odpovědět 25.4.2015 22:30
Hlupák nie je ten kto niečo nevie, hlupákom sa stávaš v momente keď sa na to bojíš opýtať.
Avatar
Odpovídá na Dominik Gavrecký
Martin Konečný (pavelco1998):25.4.2015 22:35

Ahoj,

tvůj problém je ten, že metoda prepare() pouze dotaz "připraví", ale neprovede.

Řešení jsou dvě:

  1. místo prepare() použít query()
  2. po řádku $connect->prepare() udělej ještě:
$query->execute();
$row = $query->fetchAll();
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +1 25.4.2015 22:35
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
Dominik Gavrecký:25.4.2015 22:37

Ďakujem :) A ktoré z tých dvoch možností je lepšie používať ? Prípadne + -

Nahoru Odpovědět 25.4.2015 22:37
Hlupák nie je ten kto niečo nevie, hlupákom sa stávaš v momente keď sa na to bojíš opýtať.
Avatar
Odpovídá na Dominik Gavrecký
Martin Konečný (pavelco1998):25.4.2015 23:08

query() je lepší použít v případě, kdy nedosazuješ do dotazu nějaké hodnoty poslané uživatelem, což je tvůj případ.
Kdybys chtěl vyhledat záznamy dle podmínky, je lepší použít prepare() a execute() (tzv. prepared statements), protože to automaticky ošetří proti SQL injection, viz http://www.itnetwork.cz/…ion-a-obrana.

Nahoru Odpovědět  +1 25.4.2015 23:08
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.