problema upload: Strict Standards: Only

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
salve perché quando provo ad fare un upload mi salta fuori questo errore:
PHP:
Strict Standards: Only variables should be passed by reference

alla riga:
PHP:
  // verifichiamo che il tipo è fra quelli consentiti
   else if(!in_array(strtolower(end(explode('.', $_FILES["upload"]["name"]))),$tipi_consentiti))

vi posto il codice del mio upload:
PHP:
<?php 
session_start();
include("check_login.php"); 
?>
<?php  
// settiamo alcune variabili coinvolte nello script:
// 1) settiamo la cartella in cui fare l'upload
$cartella_upload ="../upload/";

// 2) settiamo un array in cui indichiamo il tipo di file che consentiamo l'upload
// in questo esempio solo immagini 
$tipi_consentiti = array("gif","png","jpeg","jpg","zip","pdf"); 
  
// 3) settiamo la dimensione massima del file (1048576 byte = 1Mb)
$max_byte = 5000000;


// se il form è stato inviato
if(isset($_POST['up']) and isset($_FILES["upload"]))
   {
   // verifichiamo che l'utente abbia selezionato un file
   if(trim($_FILES["upload"]["name"]) == '')
      {
      echo 'Non hai selezionato nessun file!';
      }

   // verifichiamo che il file è stato caricato
   else if(!is_uploaded_file($_FILES["upload"]["tmp_name"]) or $_FILES["upload"]["error"]>0)
      {
      echo 'Si sono verificati problemi nella procedura di upload!';
      }

   // verifichiamo che il tipo è fra quelli consentiti
   else if(!in_array(strtolower(end(explode('.', $_FILES["upload"]["name"]))),$tipi_consentiti)) // QUI C'E' L'ERRORE
      {
      echo 'Il file che si desidera uplodare non è fra i tipi consentiti!';
      }

   // verifichiamo che la dimensione del file non eccede quella massima
   else if($_FILES["upload"]["size"] > $max_byte)
      {
      echo 'Il file che si desidera uplodare eccede la dimensione massima!';
      }
	
	// verifichiamo che la cartella di destinazione settata esista
	else if(!is_dir($cartella_upload))
		{
		echo 'La cartella in cui si desidera salvare il file non esiste!';
		}
	
	// verifichiamo che la cartella di destinazione abbia i permessi di scrittura
	else if(!is_writable($cartella_upload))
		{
		echo "La cartella in cui fare l'upload non ha i permessi!";
		}
   // verifichiamo il successo della procedura di upload nella cartella settata
   else if(!move_uploaded_file($_FILES["upload"]["tmp_name"], $cartella_upload.$_FILES["upload"]["name"]))
      {
      echo 'Ops qualcosa è andato storto nella procedura di upload!';
      }

   // altrimenti significa che è andato tutto ok
   else
      {
      echo 'Upload eseguito correttamente!';
      }
   }
?>
<form action="" method="post" enctype="multipart/form-data">
   <input type="file" name="upload">
   <input type="submit" name="up" value="Upload file">
</form>

lo preso da qui:
http://www.miniscript.it/articoli/41/upload_di_un_file_la_variabile__files_e_le_funzioni.html

mi dite come mai e come posso levare l'errore.?

grazie mille.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
prova a fare così
PHP:
<?php
//....
if(!in_array(strtolower(pathinfo($_FILES['upload']['name'], PATHINFO_EXTENSION)),$tipi_consentiti)){
		echo "Il file che si desidera uplodare non è fra i tipi consentiti!"; 
	}
//....
?>
 
Discussioni simili
Autore Titolo Forum Risposte Data
L [PHP] problema con upload e javascript (upload multiplo) Javascript 2
C [PHP] Problema upload file (multiplo) PHP 1
N [PHP] Problema upload immagini wordpress PHP 2
R Problema upload file PHP 1
Rikk73 Problema upload immagini PHP 4
R Problema upload PHP 1
P Problema con lettura filesystem del client da server! Upload multiplo foto. PHP 5
F Problema con upload di immagini che superano 2MB PHP 14
A Problema con Upload immagini PHP 9
francesco7 [Problema] esecuzione script Upload file in php PHP 0
L classe upload [Problema cartella] PHP 1
B Problema upload delle foto PHP 1
F Problema con upload di file PHP 1
B Problema upload application/x-zip-compressed diventa erroneamente application/octet-stream PHP 0
A problema con upload immagini multiple PHP 0
L problema ftp upload su host windows PHP 9
N problema script php mysql multi upload immagini PHP 31
N Problema upload iis7 Classic ASP 0
helpdesk Problema Upload non ridimensiona l'immagine PHP 4
B problema upload file PHP 3
C Problema nell'upload di un file PHP 4
A upload immagini problema PHP 3
R problema upload PHP 9
P Problema upload file PHP 2
G Problema con upload immagini e IE7 PHP 6
V Problema con Pure Asp Upload Classic ASP 4
Y problema nell'upload di un'immagine PHP 7
S Problema upload immagine Classic ASP 4
D Problema nome file su upload Classic ASP 5
F Problema Upload file con Internet Explorer PHP 29
SolidSnake4 problema upload PHP 1
N Problema upload immagini! HELP! PHP 0
S Problema Dominio su Tiscali e upload con ADSL ALICE Domini 1
U Problema script upload file... :'( PHP 7
C problema upload immagini grandi con 4images Programmazione 0
D problema con upload [Era: info] PHP 13
M Problema con l'upload PHP 0
V Problema Upload PHP 6
M Problema con Try Catch PHP 0
C problema seo + cerco esperto SEO e Posizionamento 1
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T PROBLEMA CON SESSIONI PHP 3
A Problema, non so, di scale() o transform, oppure altro? HTML e CSS 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2
Z Problema con il mio tp-l i nk Reti LAN e Wireless 1

Discussioni simili