Foros del Web » Programando para Internet » PHP »

caracteres latinos devueltos - variable null

Estas en el tema de caracteres latinos devueltos - variable null en el foro de PHP en Foros del Web. buenos días, cuando el nombre del archivo subido contiene caracteres latinos (ñ,á,é, ...) la variable es null, es decir la respuesta echo json_encode($ret) es null ...
  #1 (permalink)  
Antiguo 30/07/2014, 06:56
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 21 años, 7 meses
Puntos: 2
caracteres latinos devueltos - variable null

buenos días,

cuando el nombre del archivo subido contiene caracteres latinos (ñ,á,é, ...) la variable es null, es decir la respuesta echo json_encode($ret) es null o está vacia.

Código PHP:
Ver original
  1. <?php header('Content-Type: text/html; charset=ISO-8859-15');
  2.  
  3. $output_dir = "uploads/";
  4. if(isset($_FILES["myfile"]))
  5. {
  6.     $ret = array();
  7.  
  8.     $error =$_FILES["myfile"]["error"];
  9.     //You need to handle  both cases
  10.     //If Any browser does not support serializing of multiple files using FormData()
  11.     if(!is_array($_FILES["myfile"]["name"])) //single file
  12.     {
  13.         $fileName = utf8_decode($_FILES["myfile"]["name"] );
  14.         move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir.$fileName);
  15.         $ret[]= $fileName;
  16.     }
  17.     else  //Multiple files, file[]
  18.     {
  19.       $fileCount = count($_FILES["myfile"]["name"]);
  20.       for($i=0; $i < $fileCount; $i++)
  21.       {
  22.         $fileName = utf8_decode($_FILES["myfile"]["name"] );
  23.         move_uploaded_file($_FILES["myfile"]["tmp_name"][$i],$output_dir.$fileName);
  24.         $ret[]= $fileName;
  25.       }
  26.    
  27.     }
  28.     echo json_encode($ret);
  29.  }
  30.  ?>

un saludo,
josé carlos.
  #2 (permalink)  
Antiguo 30/07/2014, 08:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: caracteres latinos devueltos - variable null

Lee el manual acerca de JSON, si convierte en NULL posiblemente existe un error.

Consulta la siguiente referencia para que comprendas lo que sucede:

http://php.net//manual/es/function.json-last-error.php
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 30/07/2014, 09:34
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: caracteres latinos devueltos - variable null

siempre que subas un archivo, el nombre con el que lo guardas no debe contener caracteres especiales,
si tu archivo se llama "Ñandú viejo"
renombralo a nandu_viejo

si queres conservar el nombre original del archivo guardalo emn un campo aparte

Etiquetas: caracteres, html, latinos, null, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:46.