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

usando i valori null in un'istruzione preparata da mysqli

È possibile associare un vero valore NULL alle istruzioni preparate (leggi questo ).

Puoi, infatti, usare mysqli_bind_parameter per passare un valore NULL al database. crea semplicemente una variabile e memorizza il valore NULL (vedi la manpage) nella variabile e associalo. Comunque funziona benissimo per me.

Quindi dovrà essere qualcosa del tipo:

<?php
    $mysqli = new mysqli('localhost', 'my_user', 'my_password', 'world');

    // person is some object you have defined earlier
    $name = $person->name();
    $age = $person->age();
    $nickname = ($person->nickname() != '') ? $person->nickname() : NULL;

    // prepare the statement
    $stmt = $mysqli->prepare("INSERT INTO Name, Age, Nickname VALUES (?, ?, ?)");

    $stmt->bind_param('sis', $name, $age, $nickname);
?>

Questo dovrebbe inserire un valore NULL nel database.