Tengo un problema que me esta volviendo loco y ya no se por donde tirar.
Tengo un codigo que me sube una imagen, este es el codigo.
Código PHP:
srand (time());
//generamos un número aleatorio
//Preguntamos si nuetro arreglo 'archivos' fue definido
if (isset ($_FILES["archivos"])) {
//de se asi, para procesar los archivos subidos al servidor solo debemos recorrerlo
//obtenemos la cantidad de elementos que tiene el arreglo archivos
$tot = count($_FILES["archivos"]["name"]);
$nombre_usuario=$_GET['id'];
$ifile=$_FILES["archivos"];
mkdir("usuarios/".$nombre_usuario);
chmod("usuarios/".$nombre_usuario,0777);
for ($i = 0; $i < $tot; $i++){
$rnd = rand(1,100000000000);
//con el indice $i, poemos obtener la propiedad que desemos de cada archivo
//para trabajar con este
$name = $nombre_usuario."_".$rnd."_".$_FILES["archivos"]["name"][$i];
$tmp_name = $_FILES["archivos"]["tmp_name"][$i];
$tamano = $_FILES["archivos"]["size"][$i];
$tipo = $_FILES["archivos"]["type"][$i];
$linkimagen ="usuarios/".$nombre_usuario."/".$name;
if ($tipo != "image/gif" && $tipo != "image/pjpeg" && $tipo != "image/bmp" && $tipo != "image/png" && $tipo != "image/x-png" && $tipo != "image/jpeg" && $tipo != "image/jpg") {
echo $error = "El archivo $name no es valido";
}
if (!$error) {
$insertSQL="INSERT INTO galeria (idusuario, imagen) VALUES ('".$nombre_usuario."', '".$linkimagen."')";
// $copy = copy($tmp_name1, $linkimagen);
move_uploaded_file($tmp_name, $linkimagen);
//move_uploaded_file ( $_FILES [ "archivos" ][ "tmp_name" ], $linkimagen)
mysql_select_db($database_tengo, $tengo);
$Result1 = mysql_query($insertSQL, $tengo) or die(mysql_error());
}
}
}
Pues me crea el link en la BB.DD, pero no me sube la imagen. Los permisos en las carpetas que se crean, estan bien (777).
Ahora bien, si en vez de subir cada imagen a su respectiva carpeta coloco todas las imagenes en una sola, si me lo sube.
O sea si quito la variable $nombre_usuario de esta linea
Código PHP:
$linkimagen ="usuarios/".$nombre_usuario."/".$name;
entonces si me sube la imagen.
ALguna idea de por donde puede estar el fallo?
Un saludo