upload multiplo

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
Salve, perché questo codice che avevo scritto mesi fa.. solo che faceva vedere le informazioni nell'array..
ed ora vorrei fare che mi caricasse i file nella cartella upload/.
ecco il codice:
Mi potete aiutarmi a sistemare il codice?

PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Multi File Upload</title>
</head>
<body>
<?php
if(isset($_POST['btnSubmit'])){
$cartella = 'upload/';

$percorso = $_FILES['dynamic']['tmp_name'];
$nome = $_FILES['dynamic']['name'];
$tipo_file = $_FILES['dynamic']['type'];

if ($tipo_file == "image/jpeg" || $tipo_file == "image/pjpeg" || $tipo_file == "image/gif" || $tipo_file == "image/png") {

echo "file non permesso";

} else {

    foreach($_FILES['dynamic'] as $chi_1 => $val_1){
        echo "$chi_1:<br>";
            foreach($val_1 as $chi_2 => $val_2){
			
                if (copy($percorso, $cartella.$nome)) {

				echo "".$val_1."<br>";

				echo "Upload eseguito con successo";
				} else {

				echo "Si sono verificati dei problemi durante l'Upload";

				}
            }
			}
		}
	}	
?>
<form id="form1"  enctype="multipart/form-data" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<p id="upload-area">
   <input name="dynamic[1]" id="dynamic" type="file"  size="60" />
</p>

<input name="AddFile" id="AddFile" type="button" value="Add file" onclick="addFileUploadBox()" />
<p><input name="btnSubmit" id="btnSubmit" type="submit" value="upload"></p>
<span id="Span1"  />

<script type="text/javascript">
function addFileUploadBox()
{
    if (!document.getElementById || !document.createElement)
        return false;
        
    var uploadArea = document.getElementById ("upload-area");
    
    if (!uploadArea)
        return;

    var newLine = document.createElement ("br");
    uploadArea.appendChild (newLine);
    
    var newUploadBox = document.createElement ("input");
    
    // Set up the new input for file uploads
    newUploadBox.type = "file";
    newUploadBox.size = "60";
    
    // The new box needs a name and an ID
    if (!addFileUploadBox.lastAssignedId)
        addFileUploadBox.lastAssignedId = 100;
        
    newUploadBox.setAttribute ("id", "dynamic" + addFileUploadBox.lastAssignedId);
    newUploadBox.setAttribute ("name", "dynamic[" + addFileUploadBox.lastAssignedId+"]");
    uploadArea.appendChild (newUploadBox);
    addFileUploadBox.lastAssignedId++;
}
</script>
</form>
</body>
</html>

grazie mille e buona giornata.
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
c'è lo fatta solo che non so fare bene il controllo dei file..perché il controllo dei file non funziona.
mi potete aiutarmi ad fare il controllo dei file?
ecco il codice:
PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Multi File Upload</title>
</head>
<body>
<?php
if(isset($_POST['btnSubmit'])){
$cartella = 'upload/';
$tipo_file = $_FILES['dynamic']['type'];

                foreach($_FILES['dynamic']['tmp_name'] as $key=>$value)
				{
						move_uploaded_file($value, dirname(__FILE__)."/upload/".$_FILES['dynamic']['name'][$key]);
				}
		}
?>
<form id="form1"  enctype="multipart/form-data" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<p id="upload-area">
   <input name="dynamic[]" id="dynamic" type="file"  size="60" />
</p>

<input name="AddFile" id="AddFile" type="button" value="Add file" onclick="addFileUploadBox()" />
<p><input name="btnSubmit" id="btnSubmit" type="submit" value="upload"></p>
<span id="Span1"  />

<script type="text/javascript">
function addFileUploadBox()
{
    if (!document.getElementById || !document.createElement)
        return false;
        
    var uploadArea = document.getElementById ("upload-area");
    
    if (!uploadArea)
        return;

    var newLine = document.createElement ("br");
    uploadArea.appendChild (newLine);
    
    var newUploadBox = document.createElement ("input");
    
    // Set up the new input for file uploads
    newUploadBox.type = "file";
    newUploadBox.size = "60";
    
    // The new box needs a name and an ID
    if (!addFileUploadBox.lastAssignedId)
        addFileUploadBox.lastAssignedId = 100;
        
    newUploadBox.setAttribute ("id", "dynamic" + addFileUploadBox.lastAssignedId);
    newUploadBox.setAttribute ("name", "dynamic[" + addFileUploadBox.lastAssignedId+"]");
    uploadArea.appendChild (newUploadBox);
    addFileUploadBox.lastAssignedId++;
}
</script>
</form>
</body>
</html>

vi ringrazio molto.
 
Ultima modifica:

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
salve, ho fatto cosi, ma non funziona ancora o meglio se carico immagini jpg e altri mi dice sempre non consentito.

ecco il codice:
PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Multi File Upload</title>
</head>
<body>
<?php

if(isset($_POST['btnSubmit'])){


$allowed_types = array("image/gif","image/jpeg","image/pjpeg","image/png");

if(!in_array($_FILES["dynamic"]["type"],$allowed_types)) {

die("Upload non consentito per questo tipo di file. ");

}else
{
             foreach($_FILES['dynamic']['tmp_name'] as $key=>$value)
			{
						move_uploaded_file($value, dirname(__FILE__)."/upload/".$_FILES['dynamic']['name'][$key]);
			}
}
}
		
?>
<form id="form1"  enctype="multipart/form-data" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<p id="upload-area">
   <input name="dynamic[]" id="dynamic" type="file"  size="60" />
</p>

<input name="AddFile" id="AddFile" type="button" value="Add file" onclick="addFileUploadBox()" />
<p><input name="btnSubmit" id="btnSubmit" type="submit" value="upload"></p>
<span id="Span1"  />

<script type="text/javascript">
function addFileUploadBox()
{
    if (!document.getElementById || !document.createElement)
        return false;
        
    var uploadArea = document.getElementById ("upload-area");
    
    if (!uploadArea)
        return;

    var newLine = document.createElement ("br");
    uploadArea.appendChild (newLine);
    
    var newUploadBox = document.createElement ("input");
    
    // Set up the new input for file uploads
    newUploadBox.type = "file";
    newUploadBox.size = "60";
    
    // The new box needs a name and an ID
    if (!addFileUploadBox.lastAssignedId)
        addFileUploadBox.lastAssignedId = 100;
        
    newUploadBox.setAttribute ("id", "dynamic" + addFileUploadBox.lastAssignedId);
    newUploadBox.setAttribute ("name", "dynamic[" + addFileUploadBox.lastAssignedId+"]");
    uploadArea.appendChild (newUploadBox);
    addFileUploadBox.lastAssignedId++;
}
</script>
</form>
</body>
</html>

c'è qualcuno sa dirmi come fare?

grazie mille.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
io uso questo metodo
PHP:
<?php
//.....
$tipo=array('jpg', 'JPG','gif','png');//uso questi al posto di image/pjpeg...
foreach($_FILES['immagine']['name'] as $ch => $file){//il tuo sara $_FILES['dynamic']['name']
	$file=pathinfo($file, PATHINFO_BASENAME);//ricavo il nome del file sensa orpelli di percorso
	$estensione=pathinfo($file, PATHINFO_EXTENSION); //ricavo l'estensione del file
	//verifico che l'estensione sia tra i tipi ammessi
	if(!in_array($estensione,$tipo)){
		$non_consentito[]=$file;//per mostrare poi quale sono i non consentiti
	}
}
//poi in funzione del risultato puoi o rimandare al form o non uplodare i file non ammessi
//...
?>
evidentemente devi adattarlo alle tue esigenze
 

luigi777

Utente Attivo
14 Feb 2008
1.086
1
38
42
Massa, Italy
ecco il codice funzionante e che controlla il file da uploadare se non è consentito:

lo testato con jpg txt png.

vi dico di provare con altri formati immagini che io non ho nel mio pc.

PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Multi File Upload</title>
</head>
<body>
<?php

if(isset($_POST['btnSubmit'])){

			$allowed_types = array("image/gif","image/jpeg","image/pjpeg","image/png");


			foreach($_FILES['dynamic']['tmp_name'] as $key=>$value)
			{
				if(!in_array($_FILES['dynamic']['type'][$key],$allowed_types)) 
				{
				echo "Upload non consentito per questo tipo di file. file: ".$_FILES['dynamic']['name'][$key]."<br>";
				}else
				{
					move_uploaded_file($value, dirname(__FILE__)."/upload/".$_FILES['dynamic']['name'][$key]);
				}
			}
		}
		
?>
<form id="form1"  enctype="multipart/form-data" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<p id="upload-area">
   <input name="dynamic[]" id="dynamic" type="file"  size="60" />
</p>

<input name="AddFile" id="AddFile" type="button" value="Add file" onclick="addFileUploadBox()" />
<p><input name="btnSubmit" id="btnSubmit" type="submit" value="upload"></p>
<span id="Span1"  />

<script type="text/javascript">
function addFileUploadBox()
{
    if (!document.getElementById || !document.createElement)
        return false;
        
    var uploadArea = document.getElementById ("upload-area");
    
    if (!uploadArea)
        return;

    var newLine = document.createElement ("br");
    uploadArea.appendChild (newLine);
    
    var newUploadBox = document.createElement ("input");
    
    // Set up the new input for file uploads
    newUploadBox.type = "file";
    newUploadBox.size = "60";
    
    // The new box needs a name and an ID
    if (!addFileUploadBox.lastAssignedId)
        addFileUploadBox.lastAssignedId = 100;
        
    newUploadBox.setAttribute ("id", "dynamic" + addFileUploadBox.lastAssignedId);
    newUploadBox.setAttribute ("name", "dynamic[" + addFileUploadBox.lastAssignedId+"]");
    uploadArea.appendChild (newUploadBox);
    addFileUploadBox.lastAssignedId++;
}
</script>
</form>
</body>
</html>

Prima per uploadare altri file fatte "add file" e selezionate il file e poi fatte upload. e vi carica nella cartella upload/

vi ringrazio molto ..
buona giornata.
 
Discussioni simili
Autore Titolo Forum Risposte Data
Cosina Upload multiplo con invio allegati per email PHP 0
Cosina Upload multiplo con archiviazione in cartella PHP 16
L [PHP] problema con upload e javascript (upload multiplo) Javascript 2
C [PHP] Problema upload file (multiplo) PHP 1
P [PHP] Upload multiplo PHP 4
A Upload multiplo di immagini in PHP PHP 3
P Problema con lettura filesystem del client da server! Upload multiplo foto. PHP 5
L upload + textarea + checkbox in un form multiplo Javascript 7
R upload immagini multiplo e ridimensionamento PHP 0
S [RISOLTO] Fatal error in Upload Multiplo di immagini PHP 2
R upload multiplo di file PHP 7
M upload multiplo di 2 immagini su database mysql PHP 23
R Upload multiplo con creazione di cartella PHP 10
P Risuscito un vecchio script di upload immagine multiplo PHP 10
P Script per upload multiplo file Javascript 3
F upload multiplo Classic ASP 3
P Upload multiplo nella stessa cartella PHP 3
M Upload immagine con javascript problemi con FormData() Javascript 1
Z Upload protetto e sicuro PHP 1
L Modifica file upload in ASP Classic ASP 2
Cosina Creare bottone delete in form upload PHP 5
Cosina Creare bottone delete in form upload PHP 1
P Script upload immagini jQuery 0
L upload image tramite url e cache PHP 10
W Non fa l'upload PHP 0
L Upload di un'immagine all'interno di un database usando php PHP 6
S Upload file senza doverlo selezionare PHP 2
P Upload foto cover e profilo jQuery 0
G Upload file error Apache 0
R Modifica codice per l'upload di più file PHP 1
S Problemi con modulo upload video php (help!) PHP 0
S [PHP] Upload stesso file PHP 14
max1974 [Javascript] dropzone upload to server Javascript 0
S [ASP.Net] [ASP] Upload Image ASP.NET 6
F [PHP] Informazioni upload PHP 11
G [PHP] upload file in server: percorso cartella PHP 2
M Upload 4 file php PHP 11
M [ASP] Upload file da form controllo Classic ASP 5
D [PHP] Upload intera cartella PHP 2
felino [PHP] Uploadify: upload immagini PHP 0
M [PHP] Nome file, upload e rinominare PHP 2
R Configurazione upload ftp su dvr IP Cam e Videosorveglianza 3
M [PHP] upload di un file esistente overwrite PHP 1
N [PHP] Test per l'upload di file attraverso un bot Telegram PHP 2
L [PHP] upload con errore PHP 2
V [PHP] Upload Excel in db PHP 0
jailbait [PHP] Upload immagine e stampa a schermo PHP 0
G PHP upload dati ed immagine PHP 7
F [PHP] Validare form prenotazione appuntamento tattoo con upload image PHP 0
D [PHP] Upload encrypt image PHP 0

Discussioni simili