MRW.it Forum
  • Home
  • Forum
  • Fare Web
  • PHP

file Upload con ridimensionamento

  • Creatore Discussione Creatore Discussione helpdesk
  • Data di inizio Data di inizio 20 Giu 2012
  • Tag Tag
    imagecopyresized imagecreatefromjpeg imagecreatetruecolor imagejpeg
Prec.
  • 1
  • 2
Primo Prec. 2 di 2
helpdesk

helpdesk

Utente Attivo
30 Set 2009
726
0
16
Pesaro
  • 21 Giu 2012
  • #21
Se lo modifico così mi da i soliti errori e mi dice impossibile salvare la miniatura
PHP:
<form action="php/Upload.php" method="post" enctype="multipart/form-data">
<input name="Filedata" type="file" id="Filedata" size="40"><br>
<input name="invia" type="submit" id="invia" value="invia">
</form>
 
Ad
borgo italia

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 21 Giu 2012
  • #22
ciao
per scrupolo sono andati a riprovarlo e a me funzia.

The requested URL /dir/%3C?php%20echo%20htmlspecialchars($_SERVER[%27PHP_SELF%27]);?%3E was not found on this server.
Clicca per allargare...
un dubbio: ha messo il form nella stessa pagina php o hai messo il form in un'altra pagina tra l'altro con estenzione .htm (mi sembra probabile visto il tipo di errore)?
sia il form che la parte php devono stare nella stessa pagina php
se li dividi in due pagine al posto di
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>" method="post" enctype="multipart/form-data">
devi mettere il nome della pagina che ti fa l'immagine ridotta e cioè
<form action="pagina_che_riduce.php" method="post" enctype="multipart/form-data">

ricorda se la pag non ha estenzione .php l'interbrete non la prende in considerazione quindi quello che è compreso tra <?php ... ?> (tag compresi) viene interpretato dal bw come un semplice testo e nel caso tuo cerca una pagina che abbia quel nome assurdo
 
helpdesk

helpdesk

Utente Attivo
30 Set 2009
726
0
16
Pesaro
  • 21 Giu 2012
  • #23
Si io l'ho inserito in una pagina html e l'ho diviso provo subito a fare come dici :)
Grazie mille
 
helpdesk

helpdesk

Utente Attivo
30 Set 2009
726
0
16
Pesaro
  • 21 Giu 2012
  • #24
Ho provato ma mi da sempre gli stessi errorri :O
ho inserito questo nella pagina questa volta con estensione.php
PHP:
<form action="php/Upload.php" method="post" enctype="multipart/form-data">
<input name="Filedata" type="file" id="Filedata" size="40"><br>
<input name="invia" type="submit" id="invia" value="invia">
</form>

ma mmi da sempre gli stessi errori e mi dice impossibile salvare la minuatura
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 21 Giu 2012
  • #25
ciao
non capisco, fammi uno schema delle cartelle e dove sono posizionati i vari file, l'unica è un problema di percorsi
 

helpdesk

Utente Attivo
30 Set 2009
726
0
16
Pesaro
  • 21 Giu 2012
  • #26
Questa è la pagina php cge contiene il form per Upload:

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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>prova upload</title>
</head>
 <body>
 <div class="up">
<form action="php/Upload.php" method="post" enctype="multipart/form-data">
<input name="Filedata" type="file" id="Filedata" size="40"><br>
<input name="invia" type="submit" id="invia" value="invia">
</form>  
 </body>
</html>

Questo è lo script php per uppare rinominare e ridimensionare la foto:

PHP:
<?php 
if(isset($_POST['invia'])){
    $percorso = '../Images/thumb/';
    $nome_file=basename( $_FILES['Filedata']['name'] );
    //qui necessita un controllo
    if($nome_file !=""){
        //echo"$nome_file";
        $uploadfile = $percorso.$nome_file;
        $sposta=move_uploaded_file( $_FILES['Filedata']['tmp_name'] ,$uploadfile );
        $thumbComp = 100;
        list($width, $height, $type, $attr) = getimagesize($uploadfile);
        $max_w=130;
        $max_h=130;
        $ratio = @min($max_w/$width,$max_h/$height);
        if ($ratio < 1){
            $w = @floor($ratio*$width);
            $h = @floor($ratio*$height);
            $thumb = imagecreatetruecolor($w,$h);
            $source = imagecreatefromjpeg($uploadfile);
            imagecopyresized($thumb, $source, 0, 0, 0, 0,$w,$h,$width,$height);
            $dir=$percorso."1.jpg";
            imagejpeg($thumb,$dir,$thumbComp)or die("Impossibile salvare la miniatura");
            unlink($uploadfile);
        }else{
            $renome = $percorso."1.jpg";
            //cancello le vacchia 1.jpg
            unlink($renome);
            //e carico la nuova
            $sposta=rename( $uploadfile ,$renome);
        }
    }else{
        echo "file non indicato<br /<";
    }
 }
?>

SCHEMA

httpdocs il file provaUpload.php contenente il form per l'upload
in una cartella chiamata php c'è lo script per ridimensionare la foto che si chiama Upload.php
poi c'è una cartlla chiamata Images che contiene una cartella chiamata thumb con dentro la foto 1.jpg

httpdocs
provaUpload.php
php
Uplaod.php
Images
- thumb
1.jpg
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 21 Giu 2012
  • #27
ciao
se è così
httpdocs
...|- provaUpload.php
...|- php
.......| - Uplaod.php
.........|Images
............|thumb
...............| - 1.jpg
Clicca per allargare...
il percorso da upload.php a 1.jpg è
PHP:
$percorso = 'Images/thumb/'; //images e thumb sono sottocartelle di php
se invece è cosi
httpdocs
...|- provaUpload.php
...|php
...|..- Uplaod.php
...|Images
........|thumb
..........|.. 1.jpg
Clicca per allargare...
PHP:
$percorso = '../Images/thumb/'; //images è allo stesso livello di php
 

helpdesk

Utente Attivo
30 Set 2009
726
0
16
Pesaro
  • 21 Giu 2012
  • #28
è giusto il secondo ma mmi da sempre problemi
soliti errori e dice impossibile salvare la miniatura
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 22 Giu 2012
  • #29
ciao
piccolo dubbio: le librerie GD sono attive? guarda su ini.php se stai lavorando in locale le puoi attivare, se stai lavorando in remoto devi chiedere al tuo provider
 

helpdesk

Utente Attivo
30 Set 2009
726
0
16
Pesaro
  • 23 Giu 2012
  • #30
Ciao Borgo, scusa la mancata risposta ma attendevo la risposta del provider prima di dirti.
Si ho attive le librerie.
Lo script che sembra essere piu' adatto è questo mi da un solo errore ovvero questo alla riga 24 che non riesco ad interpretare:
Warning: imagejpeg() [function.imagejpeg]: Unable to open '../Images/thumb/1.jpg' for writing: Permission denied in /home/site/domains/site.com/public_html/dir/php/Upload.php on line 24
Impossibile salvare la miniatura

PHP:
<?php 
 header('Cache-Control: no-cache');
 header('Pragma: no-cache');
 
 $foto="1.jpg"; 
 echo"$foto<br>";
 $percorso = '../Images/thumb/';
 $uploadfile = ''.$percorso.basename( $_FILES['Filedata']['name'] );
 $sposta=move_uploaded_file( $_FILES['Filedata']['tmp_name'] ,$uploadfile );
 $nomefileimmagine=$percorso.$foto;
 if($sposta){
 if (file_exists($nomefileimmagine)){
 unlink($nomefileimmagine);}
 $nuovofile=''.$percorso.$_FILES['Filedata']['name'];
 rename($nuovofile,$nomefileimmagine);
 echo($nomefileimmagine);
 }
 $img =$percorso.$foto;
 $thumbComp = 100; 
 list($width, $height, $type, $attr) = getimagesize($_FILES['image']['tmp_name']);
 $thumb = imagecreatetruecolor(130,130);
 $source = imagecreatefromjpeg($img);
 imagecopyresized($thumb, $source, 0, 0, 0, 0,130,130,imageSx($source),imageSy($source));
 imagejpeg($thumb, $img, $thumbComp) or die("Impossibile salvare la miniatura");
 
?>

Non è che per caso l'errore sta nel fatto che la variabile foto l'ho scritta prima della variabile percorso?
 

helpdesk

Utente Attivo
30 Set 2009
726
0
16
Pesaro
  • 23 Giu 2012
  • #31
Ora ho riprovato il tuo script mi carica la foto nella directori giusta ma non la rinomina ne ridimensiona
Comunque preferisco il tuo script è di gran lunga migliore e completo
Complimenti! se si elimina sto errore è fatta ma non riesco a codificarlo
credo che mi dica che non ci sono permessi ma ho dato permessi a tutto :O
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 23 Giu 2012
  • #32
ciao
credo di no
Warning: imagejpeg() [function.imagejpeg]: Unable to open '../Images/thumb/1.jpg' for writing: Permission denied in /home/site/domains/site.com/public_html/dir/php/Upload.php on line 24
Clicca per allargare...
verifica i permessi di scrittura delle cartelle
 

helpdesk

Utente Attivo
30 Set 2009
726
0
16
Pesaro
  • 23 Giu 2012
  • #33
Ciao Borgo, grazie mille funziona perfettamente.
Il tuo script ha sempre funzionato! il problema era che la foto 1.jpg non aveva i permessi 777
e il programma non riusciva evidentemente a lavorarci su appena ho dato i permessi alla foto
il programma ha elaborato perfettamente tutto
Grazie mille sempre geniale e disponibilissimo come al solito
 
Prec.
  • 1
  • 2
Primo Prec. 2 di 2
Devi accedere o registrarti per poter rispondere.

Discussioni simili

D
Upload file in cartella con progress bar
  • Domenico2013
  • 9 Giu 2014
  • PHP
Risposte
6
Visite
2K
PHP 10 Giu 2014
Domenico2013
D
Form con campi input text e upload file
  • xone
  • 11 Apr 2014
  • PHP
Risposte
4
Visite
2K
PHP 11 Apr 2014
borgo italia
F
Problema con upload di file
  • Fim
  • 28 Mag 2013
  • PHP
Risposte
1
Visite
2K
PHP 28 Mag 2013
Fez Vrasta
F
M
Adattare script di "form mail con upload file" al mio form mail HTML!
  • Manuel Melluso
  • 2 Apr 2013
  • PHP
Risposte
7
Visite
6K
PHP 3 Apr 2013
borgo italia
G
UPLOAD con controllo esistenza file
  • gianluigidibell
  • 2 Apr 2013
  • Classic ASP
Risposte
0
Visite
2K
Classic ASP 2 Apr 2013
gianluigidibell
G
M
upload file con progress bar
  • marcomg
  • 14 Mar 2013
  • PHP
Risposte
10
Visite
3K
PHP 17 Mar 2013
Longo8
S
Upload file con IIS7?
  • saverio_web
  • 22 Lug 2012
  • Web Server
Risposte
0
Visite
3K
Web Server 22 Lug 2012
saverio_web
S
M
upload con nome file impostato
  • mizar66
  • 19 Apr 2012
  • PHP
Risposte
4
Visite
3K
PHP 7 Mag 2012
Gae58
G
Z
Upload file con XMLHttpRequest
  • z.cristiano
  • 18 Lug 2011
  • Javascript
Risposte
0
Visite
2K
Javascript 18 Lug 2011
z.cristiano
Z
F
Problema Upload file con Internet Explorer
  • frasavio
  • 22 Lug 2008
  • PHP
  • 2
Risposte
29
Visite
9K
PHP 30 Lug 2008
frasavio
F
[help] upload file con php!!!
  • nicocade
  • 2 Feb 2006
  • PHP
Risposte
1
Visite
1K
PHP 16 Feb 2006
metalgemini
L
  • Bloccata
Modifica file upload in ASP
  • LucaVet
  • 29 Lug 2021
  • Classic ASP
Risposte
2
Visite
2K
Classic ASP 28 Ago 2021
Paolo69
S
Upload file senza doverlo selezionare
  • samurai.sette
  • 29 Mag 2020
  • PHP
Risposte
2
Visite
1K
PHP 5 Feb 2021
mecoman
M
G
Upload file error
  • Gian72Luca
  • 9 Apr 2020
  • Apache
Risposte
0
Visite
3K
Apache 9 Apr 2020
Gian72Luca
G
R
Modifica codice per l'upload di più file
  • rino2002
  • 16 Mar 2020
  • PHP
Risposte
1
Visite
1K
PHP 30 Mar 2020
Flaviors200
S
[PHP] Upload stesso file
  • solari77
  • 24 Giu 2019
  • PHP
Risposte
14
Visite
2K
PHP 5 Lug 2019
mr.x
M
G
[PHP] upload file in server: percorso cartella
  • giacomo9783
  • 30 Dic 2018
  • PHP
Risposte
2
Visite
2K
PHP 31 Dic 2018
giacomo9783
G
M
Upload 4 file php
  • Maxi_007
  • 29 Ott 2018
  • PHP
Risposte
11
Visite
3K
PHP 9 Nov 2018
macus_adi
M
[ASP] Upload file da form controllo
  • Maxi_007
  • 22 Ott 2018
  • Classic ASP
Risposte
5
Visite
2K
Classic ASP 24 Ott 2018
Maxi_007
M
M
[PHP] Nome file, upload e rinominare
  • Marco Candian
  • 20 Lug 2018
  • PHP
Risposte
2
Visite
3K
PHP 20 Lug 2018
Marco Candian
M
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?