Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL/PHP - Mettere le virgolette sui numeri interromperebbe qualsiasi query?

Le virgolette sui valori vanno bene per qualsiasi tipo purché la query rimanga su MySQL. Il modo in cui verranno trattati i valori dipenderà dal tipo di campo con cui viene confrontato. Se necessario, verranno convertiti automaticamente.

Per inciso, potresti voler esaminare i wrapper di database che offrono istruzioni preparate come DOP . Oltre ad altri vantaggi, si occuperanno loro stessi della quotazione - e dell'evasione dei dati in entrata.

Un esempio dal manuale :

<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindValue(':calories', $calories, PDO::PARAM_INT);
$sth->bindValue(':colour', $colour, PDO::PARAM_STR);
$sth->execute();
?>