Magazine Internet

Exemple de requête préparée avec PHP5 et mysqli

Publié le 23 février 2009 par Samuel Martin

Comme un exemple vaut mieux qu'un long discours, voici une illustration des requêtes préparées sous forme objet avec mysqli

Exemple

Le code ci-dessous (compatible version 4.1.13 ou plus récent) permet d'enregistrer en base de données tous les sites Internet qui pointent vers le votre. Il suffit juste de récupérer le REFERER. Bien sûr l'exemple ci-dessous ne suffit pas, des opérations de filtrage et de comparaison sont nécessaires pour éviter les doublons en base de données.

function saveToDatabase($referer)
{
    $mysqli = new mysqli('host', 'username', 'mdp', 'database');

    /* Vérification de la connexion */
   /* ecriture pas vraiment objet ici */
    if (mysqli_connect_errno()) {
        printf("Échec de la connexion : %s\n", mysqli_connect_error());
        exit();
    }

    //requête
    $query = "INSERT INTO backlinks VALUES(NULL, NOW(), ?);";

    /* prépartion de la requête*/
    $stmt = $mysqli->prepare($query);

    /* liaison des variables */
    $stmt->bind_param('s',$referer);

    /* Exécution de la requête */
    $stmt->execute();

    printf("%d ligne(s) inseree(s).\n", $stmt->affected_rows);

    /* Fermeture du traitement */
    $stmt->close();

    /* Fermeture de la connexion */
    $mysqli->close();
}

Note : La liaison des variables permet d'éviter des attaques de type injection sql. Pour plus de sécurité veuillez échappez/protégez la donnée entrante $referer.


Vous pourriez être intéressé par :

Retour à La Une de Logo Paperblog

Ces articles peuvent vous intéresser :

A propos de l’auteur


Samuel Martin 21 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Magazine