Come caricare immagini con Ajax

January 28

Come caricare immagini con Ajax


Utilizzando AJAX per caricare immagini su un sito web rende la user-friendly processo, come l'upload può avvenire senza il browser sta avendo per andare a prendere una nuova pagina. Tuttavia, AJAX da sola non può caricare immagini, e l'immagine di upload tramite il codice lato server in genere richiede una nuova pagina per essere recuperato. Per ovviare a questi problemi, è possibile utilizzare le librerie jQuery con iframe in HTML della pagina per caricare l'immagine, pur rimanendo sulla stessa pagina.

istruzione

1 Scaricare lo script jQuery e jQuery multiplo di caricamento dei file Plugin (vedi Riferimenti per link) e metterli nella stessa directory. Crea la tua pagina web, il collegamento agli script nella sezione head del codice HTML come segue:

<Html>

<Head>

<Script type = "text / javascript" language = lingua = "JavaScript" valori "JavaScript" se i nomi dei file sono diversi per le versioni di script scaricati, in quanto questi cambiano spesso. Salvare il file con estensione ".php" nella stessa directory come gli script.

2 Aggiungere il modulo per il caricamento di una pagina Web inserendo il seguente codice tra l'apertura e chiusura tag <body>:

<Form action = metodo "img_load.php" = "post" enctype = target "multipart / form-data" = "load_frame">

<Input type = nome di "file" = "img []" class = "multi" />

<Input type = "submit" name = "upload" value = "Carica immagine!" />

</ Form>

<Iframe id = nome "load_frame" = "load_frame" inserendo il seguente codice:

<? Php

if (isset ($ _ POST [ 'upload']))

{$ Uploaddir 'uploadedimgs /';

foreach ($ _FILES [ "img"] [ "errore"] da $ index => $ di stato)

{If ($ stato == UPLOAD_ERR_OK)

{$ Temp = $ _FILES [ "img"] [ "tmp_name"] [$ indice];

$ File_ref = $ _FILES [ "img"] [ "nome"] [$ indice];

$ FILE_LOCATION = $ uploaddir. basename ($ file_ref);

if (move_uploaded_file ($ temp, $ FILE_LOCATION))

{Echo "<p> Il file (".. $ File_ref ") è stato caricato </ p>!"; }

altro

"(.. $ File_ref") {echo! <P> Ops Il file "non è stato caricato </ p>."; }}}}

?>

Anche se contenuta in un file separato, questo codice verrà eseguito all'interno della pagina iframe principale, come è indicato come la fonte e viene specificato come destinazione per inviare il modulo di upload.

4 Creare una nuova directory nella stessa directory come i vostri script e il nome "uploadedimgs", in quanto questo è dove verranno collocate tutte le immagini caricate. Carica la tua pagina web, PHP script di upload, sia file JavaScript (jQuery e Carica plugin) e la nuova directory "uploadedimgs" al server Web. Assicurarsi che tutti i file rimangono nella stessa posizione relativa in modo che i riferimenti codice funzionerà correttamente.

5 Passare alla tua pagina web e verificare la funzionalità di caricamento. Verificare che le informazioni nella sezione iframe della pagina aggiorna correttamente l'invio del modulo, come dovrebbe in uscita uno dei messaggi inclusi indicando se il caricamento ha avuto successo o meno. Anche controllare che le immagini sono state caricate con successo facendo una connessione al server e controllo del contenuto della directory "uploadedimgs".

Consigli e avvertenze

  • È possibile nascondere le iframe nelle pagine impostando la visibilità di "nascosto" nel codice CSS.
  • Utilizzo di iframe possono essere imprevedibili, in modo da assicurarsi che si prova le tue pagine in diversi browser web.