En primer lugar, gracias, josemi: me faltaba ese paréntesis (que fallo más tonto...).
Y gracias a todos por vuestras respuestas.
El script funciona ahora. Pero aún tiene un error. Me explico.
Ahora sube las imágenes sin ningún problema. Pero las llama a todas "img.", sin ningún tipo de extensión. O sea, que por muchos uploads que se hagan, en ese directorio sólo existe un archivo (de imagen, porque si accedo a la url de ese archivo por el navegador,
http://www.misitio.com/.../imagenes/img. aparece la última imagen subida) que se llama img. y que va cambiando a medida que se hacen uploads.
Recopilando, aquí van los códigos de nuevo a ver si me podéis ayudar:
- upload.php :
<FORM ENCTYPE="multipart/form-data" ACTION="procesar.php" METHOD="POST">
ARCHIVO DE IMAGEN: <INPUT NAME="userfile" TYPE="file">
Tu nombre:</b></font><b>
<INPUT TYPE="submit" VALUE="Subir Imagen">
</FORM>
- procesar.php:
Código PHP:
<?php
// Image file upload by Bloody
// [url]http://www.bloodys.com/[/url]
// email: [email][email protected][/email]
// If you use this script, please put a link back to [url]http://www.bloodys.com/[/url]
$path = "";
$max_size = 50000;
if (is_uploaded_file($userfile)) {
if ($userfile_size>$max_size) { echo "EL ARCHIVO ES DEMASIADO GRANDE (max. 40 KB).<br>\n"; exit; }
if (($userfile_type=="image/gif") || ($userfile_type=="image/pjpeg")) {
if (file_exists($path . $userfile_name)) { echo "EL ARCHIVO YA EXISTE.<br>\n"; exit; }
$archivo = fopen('numimages.txt', 'w'); //abrimos el archivo
$numero = fread($archivo, filesize('numimages.txt'));
//con esto ya tenemos en $numero el numero
//que este dentro del archivo
$extencion = split('.', $userfile_name); //aca sacamnos la extencion
$extencionN = $extencion[count($extencion) - 1];
$destino = "img$numero.$extencionN";
//con esto ya tenemos la imagen con el nombre que debe estar
//ahora debesmos guardar en el archivo un numero mas
//al que tenia
fwrite($archivo, ++$numero); //escribimos el numero nuevo
//ahora solo falta hacer el copy
$res = copy($userfile, $destino);
if (!$res) {
echo "UPLOAD FALLADO!<br>\n"; exit; }
else
echo "UPLOAD EXITOSO!<br>\n";
echo "Nombre del Archivo: $userfile_name<br>\n";
echo "Tamaño del Archivo: $userfile_size bytes<br>\n";
echo "Formato del Archivo: $userfile_type<br>\n";
} else { echo "FORMATO DEL ARCHIVO ERRONEO (solo jpeg o gif).<br>\n"; exit; }
}
?>
Salu2.