Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wstaw adres IP pobranych plików do mysql

Imho nie potrzebujesz żadnego zapytania UPDATE. Po prostu wykonujesz INSERT za każdym razem, gdy użytkownik żąda pliku:

<?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'],
    ));   

}
?>

Kilka wskazówek dotyczących powyższego kodu:

  • Użyj przygotowanych instrukcji - nigdy nie wstrzykuj żadnej wartości bezpośrednio do ciągu SQL.
  • Za każdym razem wstawianie nazwy_pliku i pobierania elementów do tabeli szczegółów może być bezużyteczne. I tak masz te informacje w swojej tabeli „Źródło”. Więc zwykle po prostu umieściłbyś Source.id w swojej tabeli szczegółów.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mySQL suma dwóch wartości w 2 różnych tabelach

  2. Dlaczego procedury składowane nadal nie są obsługiwane w Railsach (3+)?

  3. MySQL - Pobierz wartość wiersza z innej tabeli w zależności od wartości wiersza w tabeli

  4. Jak wypełnić dziury w polach autoinkrementacji?

  5. Prawdziwy max_execution_time dla PHP na Linuksie