Cita:
Iniciado por alvlin Solamente nos enteraremos si ponés el código involucrado
Vale acabo de encontrar el problema pero no se como resolverlo: (no pego todo el código porque sería un abarbaridad).
El tema es que si tengo un string "casa_de_pepe.jpg" y lo concateno con la $id
$string=casa_de_pepe.jpg;
$nombre=$id.$string;
Por alguna extraña razón no me lo pega ,sino que obtengo esto
152 casapepe.jpg y no 152casapepe.jpg como sería lo correcto ¿porque?, púes no lo entiendo supongo que la concatenación no estará bien hecha ¿no?.
le he metido la función trim al id por si acaso llegaba con espacios en blanco (la desesperación me ha llevado a probar), pero tampoco es eso
trim($id);
Bueno seguiré investigando y ya comentaré mi error por aquí cuando lo descubra, voy a pegar el código nuevamente aunque ya en otro post lo había hecho.
Nota: he modificado la función real , porque de esta forma se puede con el return saber que valor devuelve el nombre del archivo habiendo concatenado y sin concatenar, se puede apreciar como al no concatenar , si no concateno devuelve el nombre perfectamete , pero si lo hago deja un espacio ¡¡ese es el fallo¡¡ ¿pero porque lo deja ?, es decir 151 nombreimagen.jpg.
Acabo de comprobar que si asigno un nuevo valor a $id dentro de la función en cuentión SI FUNCIONA ¿entonces el fallo tiene que estar en el valor que le llega $id si o si verdad?. De todas formas pensaba que con trim($id) lo solucionaría pero nada.
Seguiré investigando.
Código:
function proces_img($file,$id) {
/* directorio de subida de imágenes */
include("diccionario.php");
$test=comprueba_foto($file);
if ($test)
{
trim($id);
//subimos la imagen convertimos los caracteres del nombre a minúsculas
$file['name']=strtolower($file['name']);
$file['name']="$id".$file['name'];
/* comprobamos si tiene guines - y los sustituimos por guiness bajos _ */
/*if (strpos($file['name'],"-") )
$file['name']=eliminar_guiones($file['name']); */
//$name=substr_replace ($file['name'],$id,0,0);
if ( upload_image($file,$path) )
return $file['name'];
return false;
}
else
return false;
}
Gracias