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

Salvataggio del percorso file dell'immagine caricata nel database MySQL

Problemi di sicurezza e estensione deprecata a parte, tutto ciò che devi fare è inserire il nome del file nel database. Per fare ciò, aggiungi un campo "filename" al tuo database e quindi modifica la tua query di inserimento di conseguenza:

INSERT INTO products (name, description, price_low, price_high, filename)
              VALUES (:name, :desc, :price_low, :price_high, :filename)

Inoltre, il tuo $uploaddir variabile è vuota, i file probabilmente non vengono nemmeno salvati da nessuna parte al momento. Per spostare correttamente i tuoi file, prova qualcosa del genere:

$uploaddir = '/path/where/you/can/save/';
$rawFilename = $_FILES['userfile']['name'];
$extension = pathinfo($rawFilename, PATHINFO_EXTENSION);

$uploadfile = $uploaddir . md5($rawFilename) . '.' . $extension;

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "File is valid, and was successfully uploaded.\n";
} else {
    echo "Upload failed";
}

Questo script presuppone che ti fidi del contenuto caricato e la funzione md5 è solo un modo semplice e veloce per "disinfettare" (se così posso chiamarlo) il nome del file.