Mysql
 sql >> Base de données >  >> RDS >> Mysql

Insérer l'adresse IP des fichiers téléchargés dans mysql

À mon humble avis, vous n'avez besoin d'aucune requête UPDATE. Vous faites juste un INSERT à chaque fois qu'un utilisateur demande un fichier :

<?php
$fileid = $_GET['fileid'];

$pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'password');

$sql = "SELECT * FROM Source WHERE id=" . (int)$fileid;
foreach ($pdo->query($sql) as $row) {

    $statement = $pdo->prepare("INSERT INTO details (name, download, time, ip) VALUES (?, ?, NOW(), ?)");
    $statement->execute(array(
        $row['item_name'], 
        $row['items_download'],
        $_SERVER['REMOTE_ADDR'],
    ));   

}
?>

Quelques conseils sur le code ci-dessus :

  • Utilisez des instructions préparées :n'injectez jamais de valeur directement dans une chaîne SQL.
  • Il peut être inutile d'insérer à chaque fois file_name et items_download dans la table des détails. Vous avez cette information dans votre table "Source" de toute façon. Donc, généralement, vous placeriez simplement Source.id dans votre tableau de détails.