Originalmente inviato da
gabryhacker
Qui
Codice PHP:
$nome = $file['name'];
prova a sostituire con:
Codice PHP:
$nome = basename($_FILES['img']['name']);
Metto basename, ma $_FILES['img']['name'] non serve: L'array $_FILES['img'] l'ho rinominato il $file, provo con basename()...
Grazie a tutti.
EDIT:
Adesso il codice è questo:
Codice PHP:
<?php
$file = $_FILES['img'];
$cons = array(
"image/jpeg",
"image/jpg",
"image/png",
"image/dib",
"image/bmp",
"image/jfif",
"image/jpe",
"image/tif",
"image/tiff",
"image/pjpeg"
);
if(!in_array($file['type'],$cons)){
define("DIR", "http://riupload.altervista.org/_altervista_ht/");
if (!in_array($file['type'],$cons))
{ // apro if principale
echo "Attenzione: hai selezionato un file che è in un formato non supportato! Torna indietro!";
} // chiudo if principale
else // apro else principale
{
if (isset($_POST['action']) and $_POST['action'] == 'upload') // inizio if 1
{
if (isset($file)) // inizio if 2
{
if ($file['error'] == UPLOAD_ERR_OK and is_uploaded_file($file['tmp_name'])) // inizio if 3
{
$cas = rand(0, 9);
$cas.= rand(0, 9);
$cas.= rand(0, 9);
$cas.= rand(0, 9);
$cas.= rand(0, 9);
$data = date("d-m-y");
$nome = basename($file['name']);
$nome = str_replace('.gif', '_'.$cas.'_'.$data.'.gif', $nome);
$nome = str_replace('.png', '_'.$cas.'_'.$data.'.png', $nome);
$nome = str_replace('.jpg', '_'.$cas.'_'.$data.'.jpg', $nome);
$nome = str_replace('.jpeg', '_'.$cas.'_'.$data.'.jpg', $nome);
$nome = str_replace('.pjpeg', '_'.$cas.'_'.$data.'.jpg', $nome);
$nome = str_replace('.bmp', '_'.$cas.'_'.$data.'.bmp', $nome);
$nome = str_replace('.dib', '_'.$cas.'_'.$data.'.bmp', $nome);
$nome = str_replace('.jpe', '_'.$cas.'_'.$data.'.jpg', $nome);
$nome = str_replace('.jfif', '_'.$cas.'_'.$data.'.jpg', $nome);
$nome = str_replace('.tiff', '_'.$cas.'_'.$data.'.tif', $nome);
$nome = str_replace('.tif', '_'.$cas.'_'.$data.'.tif', $nome);
$nome_e_dir = DIR.$nome;
$temp = basename($file['tmp_name']);
move_uploaded_file($temp, $nome_e_dir);
$ok = "La tua immagine è stata caricata al seguente indirizzo: ".$nome_e_dir;
echo $ok;
} // chiudo if 3
else // apro else 3
{
echo "Errore interno: riprova...";
} // chiudo else 3
} // chiudo if 2
else // apro else 2
{
echo "Errore: non hai inserito nessun file...";
} // chiudo else 2
} // chiudo if 1
else // apro else 1
{
header("Location:form.htm");
} // chiudo else 1
} // chiudo else principale
?>
ma mi da sto errore:
"Parse error: syntax error, unexpected $end in /membri/riupload/upload_img.php on line 74"
La linea 74 è l'ultima!! Ho semplicemente chiuso il tag PHP