Jakub L. Programista
Temat: [mysql] select * from baza where ...
Szymon G.:
A proszę (od razu mówię, że to tak na szybko pisane, coś może być nie tak, acz sens chyba jest OK):
$dsn = 'mysql:dbname=wp;host=127.0.0.1';
$user = 'login';
$password = 'password';
$dbh = null;
[b]try {
$dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}[/b]
$sth = $dbh->prepare($sql);
$sth->bindValue(':rok', $_POST['rok'], PDO::PARAM_INT);
$sth->bindValue(':miesiac', $_POST['miesiac'], PDO::PARAM_INT);
$sth->execute();
$result = $sth->fetchAll();
PS) oczywiście krytyka wszelka mile jest widziana.
To ja się zapytam o iedologię, bo interesują mnie motywacje i nawyki robienia takiego a nie innego kodu: po co jest tamto wyboldowane try/catch w dokładnie tamtym miejscu?
Jak tam poleci wyjątek, to cała reszta raczej pójdzie do piachu bo $dbh będzie niepoprawne, więc prepare się nie powiedzie, w zależności od konfiguracji pójdzie FALSE albo następny exception albo jeszcze inne cuda?
Nie lepiej skończyć całej imprezy, albo objąć całośćw try/catch, i w zależności od rodzaju wyjątku posprzątać?