• User

    Upload immagini in locale

    Ciao a tutti!
    Ho creato un databse che ospita dati ed immagini.
    Inizialmente ho caricato le immagini direttamente nel DB con il campo LONGBLOB e funziona tutto perfettamente.
    Adesso vorrei provare invece ad inserire le immagini in una cartella dedicata e lasciare nel campo del DB solo il link alle varie foto.
    Ho creato questo script:
    [PHP]$path = "./fotimm/".(isset($_FILES['image']['name']));

    if (is_uploaded_file.$_FILES['image']['tmp_name']) {
    move_uploaded_file($_FILES['image']['tmp_name'],$path);

    echo "Upload eseguito con successo";
    }
    else
    {
    echo "Si sono verificati dei problemi durante l'Upload";
    }[/PHP]
    Provandolo in locale non funziona,non esegue l'upload.Io credo(ma non sono sicura) che abbia sbagliato ad indicare il percorso della cartella dove devono andare le immagini,ed ho fatto qualche prova ma senza successo.Mi potreste aiutare? 😄

    Lo script si trova nel percorso C:\xampp\htdocs\immobiliare
    Le immagini devono andare in C:\xampp\htdocs\immobiliare\fotimm

    Grazie a tutti,ciao^_^


  • User

    Sostituisco questo:
    [php] $path = "./fotimm/".(isset($_FILES['image']['name']));[/php] con

         [/php]$path = "./fotimm/".$_FILES['image']['name'])[/php];
    

    funziona ma dà un errore di notice:
    **
    Notice**: Use of undefined constant is_uploaded_file - assumed 'is_uploaded_file' in C:\xampp\htdocs\inseriscia.php on line 12

    per eliminarlo ho scritto:

    if ('is_uploaded_file'.$_FILES['image']['tmp_name'])

    in più una cosa strana è che nel campo della tabella non compare il link alla foto,ma nella cartella la foto c'è.


  • Consiglio Direttivo

    Ciao Novella,
    non hai postato la parte di codice che inserisce il link nel campo apposito, pertanto ci verrà difficile darti un aiuto. 😉


  • User Attivo

    [php]
    if (is_uploaded_file.$_FILES['image']['tmp_name']) {
    [/php]che diventa
    [php]
    if ('is_uploaded_file'.$_FILES['image']['tmp_name']);
    [/php]:o

    O mamma, la correzione è peggio dell'errore iniziale :bho:
    Correggi in questo..almeno un pezzo lo risolvi in modo corretto
    [php]
    $path = "./fotimm/";
    $uploadfile = $path . basename($_FILES['image']['name']);

    if ($_FILES['image']['error'] == 0 and $_FILES['image'] > 0 and is_uploaded_file($_FILES['image']['tmp_name'])) {
    move_uploaded_file($_FILES['image']['tmp_name'], $uploadfile);
    echo "Upload eseguito con successo";
    } else {
    echo "Si sono verificati dei problemi durante l'Upload";
    }
    [/php]is_uploaded_file ti dice SOLO se il file è stato inviato tramite HTTP POST ma non garantisce altri controlli che invece andrebbero fatti...

    :vai:


  • User

    Si,scusate raga se non ho postato più,non ho avuto proprio tempo.Lo script l'ho risolto,funziona benissimo ed adesso lo sto implementando sempre di più,sto aggiungendo upload multiplo,resize ed il controllo per accettare solo file jpg.
    Comunque grazie come sempre a tutti!