Sostituire immagine in una cartella.

  • Creatore Discussione Creatore Discussione Ppz@OdC
  • Data di inizio Data di inizio

Ppz@OdC

Nuovo Utente
2 Mar 2013
25
0
0
Ciao a tutti,volevo fare una domanda,io con uno script carico un'immagine dentro una cartella,io volevo sapere se è possibile fare in modo che se nella cartella esiste già un immagine questa venisse sostituita con quest'ultima che sto caricando,è possibile fare una cosa del genere,se si come faccio?
Questo è lo script con quale carico l'immegine nella cartella Immagini.

PHP:
<html>
<body>
<?php
do {
if (is_uploaded_file($_FILES['file']['tmp_name'])) {

if ($_FILES['file']['size'] > 8024000) {
$msg = "<p>Il file non deve superare i 18 KB!!</p>";
break;
}

list($width, $height, $type, $attr) = getimagesize($_FILES['file']['tmp_name']);

if (($width > 400) || ($height > 350)) {
$msg = "<p>Dimensioni non corrette!!</p>";
break;
}

if (($type!=1) && ($type!=2) && ($type!=3)) {
$msg = "<p>Formato non corretto!!</p>";
break;
}

if (file_exists('Immagini/'.$_FILES['file']['name'])) {
$msg = "<p>File già esistente sul server. Rinominarlo e riprovare.</p>";
break;
}
if (!move_uploaded_file($_FILES['file']['tmp_name'], 'Immagini/'.$_FILES['file']['name'])) {
$msg = "<p>Errore nel caricamento dell'immagine!!</p>";
break;
} 
}
} while (false);
?>
</body>
</html>
 
Ultima modifica di un moderatore:
Beh togli il controllo tramite il file_exists() nel penultimo if e prova
 
Me la mette comunque.
In che senso? Dovrebbe andare bene no? Tu hai chiesto che "se nella cartella esiste già un immagine questa venisse sostituita con quest'ultima che sto caricando" quindi levando il controllo per l'esistenza di uno stesso file con nome uguale dovrebbe sostituirtela
 
Allora mi sono spiegato male io,se le immagini hanno lo stesso nome levando il controllo è ovvio che funziona,ma io volevo fare in modo che anche se c'è un'immagine e ha un nome diverso venisse lo stesso sostituita da quest'ultima che sto caricando,praticamente in questa cartella non ci possono stare più di una di immagini.
 
Allora mi sono spiegato male io,se le immagini hanno lo stesso nome levando il controllo è ovvio che funziona,ma io volevo fare in modo che anche se c'è un'immagine e ha un nome diverso venisse lo stesso sostituita da quest'ultima che sto caricando,praticamente in questa cartella non ci possono stare più di una di immagini.
Allora non fai prima a mettere un nome statico all'immagine?
PHP:
if (!move_uploaded_file($_FILES['file']['tmp_name'], 'Immagini/immagine.png'))
 
Perfetto grazie.
Funziona alla grande.
In effetti è una soluzione alla quale avevo già pensato,ma mai messa in pratica.
Grazie ancora.
 

Discussioni simili