gracias amigo por tu tiempo, modifique el codigo y actualmente lo tengo asi:
Código PHP:
/Imprimir el array que viene via POST (Solo para efectos de Debug) print_r($_POST);
require_once '../Inc/funciones.php';
$obj = new Avisos();
/*$obj->insertarAvisos();*/
if(isset($_POST['enviar'])){
if(isset($_FILES['fotosavisos'])){
$rutas = array('', ''); // Inicializas con dos rutas vacías
//Subida de Archivos
foreach($_FILES['fotosavisos']['tmp_name'] as $key => $nombresTemporal)
{
//Nombre del Arreglo generado con el input fotosavisos
$nombres=$_FILES['fotosavisos']['name'][$key];
//Nombre Temporal de la Imagen (Generada por el servidor)
$nombresTemporal=$_FILES['fotosavisos']['tmp_name'][$key];
//Tamaño de la Imagen
$tamaño=$_FILES['fotosavisos']['size'][$key];
//Tipo de Imagen
$tipo=$_FILES['fotosavisos']['type'][$key];
$nombres= uniqid(date()).$nombres;
$nombres=preg_replace('#[^a-z.0-9,\s+]#i', '', $nombres);
//$nombres= substr(($nombres),0,25);
//Extension
$mak= explode(".", $nombres);
$extensionimg=end($mak);
//$nombreUnico=substr(md5($nombres),0 , 10);
if (!preg_match("/.(jpg|jpeg|gif|png)$/i", $nombres) ) {
// This condition is only if you wish to allow uploading of specific file types
echo "ERROR: Solo Imagenes con formato: .gif, .jpg, or .png.";
unlink($nombresTemporal); // Remove the uploaded file from the PHP temp folder
exit();
}
//$nombreunico = substr($nombreunico,0,10 );
//$nombreunico = preg_replace('#[^a-z.0-9]#i', '', $nombres);
//Ruta en Servidor
$rutaFinal="../imagenes_avisos/".$nombres; //.$nombreunico.$nombres
$rutaFinalSQL="imagenes_avisos/".$nombres; //VALIDAR QUE ESTA RUTA EXISTA
//Movemos los Archivos al Servidor
move_uploaded_file($nombresTemporal,$rutaFinal);
// Actualizas la ruta correspondiente para este archivo
$rutas[$key] = $rutaFinalSQL;
}//foreach
//Llamamos a la funcion Insertar $obj->insertarAvisos();
try{
$obj->insertarAvisos($rutas);
//print_r($_POST);
}catch(PDOException $e){
echo $e;
}
}
}
?>
funciona bien, de hecho sube la imagen, añade el unique id, pero tengo algunos problemas...
me da este warning:
Warning: date() expects at least 1 parameter, 0 given in C:\xampp\htdocs\avisos\crud\insert.php on line 37
la linea es esta:
$nombres= uniqid(date()).$nombres;
y el archivo me lo sube bien, pero me deja el nombre por ejemplo asi:
ORIGINAL:
WP_20140626_18_50_55_SmartShoot.JPG
Y AL SUBIRLO ME LO SUBE ASI:
53ec22718a6d4WP20140626185055SmartShoot.JPG
loq ue busco es dejarlo asi por ejemplo
53ec22718a6d4WP201406261.jpg
estaria eliminando bien los espacios, pero al acortar el numero de caracteres con:
$nombres= substr(($nombres),0,25); //probando a 25 caracteres
me salta el filtro de que solo imagenes jpg, gif, etc, siendo que subo una jpg (la del ejemplo de arriba) y no
puedo subir ninguna imagen, solo eliminando esta linea vuelve a funcionar
en eso estoy pegado, ya tengo el filtro por extension funcionando, me falta:
- lo del warning date
- acortar a xx caracteres el nombre final
Saludos cordiales y agradeszco a todos su tiempo....