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

Konvertering af en streng til en mySql DECIMAL type

Du bør aldrig bare "indtaste det nøjagtige indhold af $_POST['...'] " ind i ethvert databasefelt:det er en dør, der åbnes til SQL-injektioner.

I stedet skal du sikre dig, at de data, du indsætter i dine SQL-forespørgsler, faktisk er gyldige i henhold til de forventede DB-datatyper.


For decimaler ville en løsning på PHP-siden være at bruge floatval funktion :

$clean_price = floatval($_POST['price']);
$query = "insert into your_table (price, ...) values ($clean_price, ...)"
if (mysql_query($query)) {
    // success
} else {
    echo mysql_error();   // To help, while testing
}

Bemærk, at jeg ikke har sat noget citat omkring værdien;-)




  1. Sådan konverteres et heltal til en decimal i SQL Server

  2. Oracle DB:Hvordan kan jeg skrive forespørgsel, der ignorerer store og små bogstaver?

  3. Oracle Datatyper

  4. HikariCP:Hvilke timeouts på databaseniveau skal overvejes for at indstille maxLifetime for Oracle 11g