NotORM vytváření databáze

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Lukas1212
Člen | 4
+
0
-

Ahoj všichni, potřeboval bych poradit ohledně vytváření query v NotORM. Ve své aplikaci potřebuji vytvářet další databáze. Momentálně používám tohle:

<?php
$this->database->query('CREATE DATABASE IF NOT EXISTS ?', new Nette\Database\SqlLiteral($databaseName));
?>

Jenže je zde problém, že použitím tohohle právě zde vzniká nebezpečí SQL injection. Ve své aplikaci ještě před tímto omezuji vstupní znaky, co jdou do $databaseName. Ale chtěl bych se zeptat, jestli neexistuje nějaké lepší řešení?

SQL dotaz musí vypadat takto

CREATE DATABASE IF NOT EXISTS databaze

nebo

CREATE DATABASE IF NOT EXISTS `databaze`

Bez použití SqlLiteral, ale dotaz vypadá takto

CREATE DATABASE IF NOT EXISTS 'databaze'

a ten je nefunkční.

David Matějka
Moderator | 6445
+
0
-

zatim to musis osetrit pomoci driveru, viz https://github.com/…te/pull/1325https://github.com/…/issues/1324

Lukas1212
Člen | 4
+
0
-

Děkuji moc.