Tnego una funcion para upload de archivos pdf. ME hace todo de forma correcta. Lo que no se hacer es como renombrarlos de siguiente manera.
Tengo una tabla con columnas id_pdf, .... , nombre_pdf, id_user
Entonces
// primero cargo el archivo
//luego hago un insert con los datos indicados arriba
Lo que necesito es renombrar archivo una vez subido que tenga el nombre "a".id_pdf.
O sea, a1, a2.... an
Aqui he puesto la funcion que utilizo pero resulta que esta funcion me renombra todos los archivos del mismo usuario con el mismo nombre que es priemr id_pdf.
Código PHP:
function upload_files($archivo_temporal, $archivo_nuevo, $dir, $tipo, $size, $URL, $id_user, $id_congreso){
//$archivo_temporal $_FILES['foto']['tmp_name']
//nombre imagen-nombre imagen a subir $_FILES['foto']['name']
//dir - directorio
//tipo de imagen debe ser jpeg, gif o pjpeg $_FILES['foto']['type']
//tamano de archivo $size $_FILES['foto']['size']
//$tipo_archivo apllication o image
//tamano de imagen no puede superar 300kb
//comprobamos que no hay imagen con el mismo nombre
//si lo hay redireccionamos a la pagina web de donde a venido con el error
$uploadfile = $dir . basename($archivo_nuevo);
//comprobamos si ya hay un archivo con el mismo nombre
if(file_exists($uploadfile)==true)
{echo("Ya existe abstract con el mismo nombre!");
exit();
}
//cargamos pdf en una carpeta temporal y comprobamos que cumple las carateristicas
if(is_uploaded_file($archivo_temporal)) {
//comprobamos si se trata de un imagen o pdf valido
if ($tipo=="application/pdf") {
if($size<307200){
//mover archivo a la carpeta espicificada
if(move_uploaded_file($archivo_temporal, $uploadfile)) {
//insertamos datos dentro de la tabla registro_usuarios
$sql_in="INSERT INTO abstract (id_abstract, abstract_pdf, id_user, id_congreso, fecha_upload, id_estado, valorador) VALUES ('' , '$uploadfile', '$id_user' , 1 , now(), 2, '')";
$query_insert=mysql_query($sql_in);
//seleccionamos id_abstract asignado
$sql_sel=mysql_query("select * from abstract where id_user='$id_user' AND id_congreso=1 and abstract_pdf='$uploadfile' ");
$sql_result=mysql_fetch_array($sql_sel);
$id_abstract= $sql_result['id_abstract'];
//renombramos el archivo con el nobre a y id_abstract
$filename="abstract/a".$id_abstract;
rename($uploadfile, $filename);
//actualizamos nombre del archivo
$sql_up=mysql_query("UPDATE abstract SET abstract_pdf='$filename' ");
chmod($uploadfile, 0775);
echo "<b>Upload ok!. Datos:</b><br>";
echo "Nombre: <i><a href='".$filename."'>".$filename."</a></i><br>";
echo "Tipo MIME: <i>".$tipo."</i><br>";
echo "Peso: <i>".$size." bytes</i><br>";
echo "<br><b><a href='area_gestion.php'><b>Volver a mi área de gestón.</b></a><br><hr><br>";
}
else {echo("<b>No se ha podido subir el abstract. Intente mas tarde.</b><br><b><a href=".$URL."><b>Intente de nuevo</b></a><br>");}
}
else {echo("<b>El tamaño del abstract supera el limite de 300kb.! Upload no permitido!</b><br><b><a href=".$URL."><b>Intente de nuevo</b></a><br>");}
}
else {echo("<b>El tipo del archivo debe ser PDF. Upload no permitido!</b><br><b><a href=".$URL."><b>Intente de nuevo</b></a><br>");}
}
}