Foros del Web » Programando para Internet » PHP »

No me quita los acentos!!

Estas en el tema de No me quita los acentos!! en el foro de PHP en Foros del Web. Hola!! tengo una pagina en la cual subo unos videos y luego los convierto a flv con ffmpeg el problema es que si no le ...
  #1 (permalink)  
Antiguo 04/12/2009, 07:58
 
Fecha de Ingreso: noviembre-2007
Mensajes: 229
Antigüedad: 16 años, 4 meses
Puntos: 0
No me quita los acentos!!

Hola!!

tengo una pagina en la cual subo unos videos y luego los convierto a flv con ffmpeg el problema es que si no le quito los acentos me aparecen unos caracteres raros y a la hora de cojerlos el ffmpeg me dice que no existe el archivo.

he intentado quitarlos con las siguientes funciones:

Código PHP:
function elimina_acentos($cadena){
$tofind "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ()";
$replac "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn__";
return(
strtr($cadena,$tofind,$replac));

y con esta pero no ha habido suerte...
Código PHP:
function elimina_acentos($s){
   
$s ereg_replace("[áàâãª]","a",$s);
   
$s ereg_replace("[ÁÀÂÃ]","A",$s);
   
$s ereg_replace("[ÍÌÎ]","I",$s);
   
$s ereg_replace("[íìî]","i",$s);
   
$s ereg_replace("[éèê]","e",$s);
   
$s ereg_replace("[ÉÈÊ]","E",$s);
   
$s ereg_replace("[óòôõº]","o",$s);
   
$s ereg_replace("[ÓÒÔÕ]","O",$s);
   
$s ereg_replace("[úùû]","u",$s);
   
$s ereg_replace("[ÚÙÛ]","U",$s);
   
$s str_replace("ç","c",$s);
   
$s str_replace("Ç","C",$s);
   return 
$s;

este es todo el codigo que utilizo para guardar el archivo una vez subido pero me sigue sin quitar los acentos...

Código PHP:
if (!empty($_FILES)) {
    
$tempFile $_FILES['Filedata']['tmp_name'];
    
$targetPath $_SERVER['DOCUMENT_ROOT'] . $_GET['folder'] . '/';
$id=$_GET['id'];
$filer=str_replace(" ""_"elimina_acentos($_FILES['Filedata']['name']);
$filer=str_replace("&""and"$filer);

$extension pathinfo($filerPATHINFO_EXTENSION);
$filer basename($filer'.'.$extension)."_".$id.".".$extension;


    
$file=str_replace('//','/',$_GET['folder'] . '/'). $filer;
    
$targetFile =  str_replace('//','/',$targetPath) . $filer;

      
$datadate("d/m/Y");
      
mkdir(str_replace('//','/',$targetPath), 0777true);
   if(
move_uploaded_file($tempFile,$targetFile)){
   
$id=$_GET['id'];
   
$nam=$filer;
   
$title=$_GET['titulo'];
   
$tage=$_GET['tag'];
   
$cate=$_GET['categ'];
   
$user=$_GET['user'];

   
$sql "INSERT INTO filmfiles(id, file, fileroot, name, titulo, tags, categoria, user, date, biltrate, duracion, thumb, resolucion, video, audio) VALUES ( '$id', '$file', '$targetFile', '$nam', '$title', '$tage', '$cate', '$user', '$data', '', '', '', '', '', '')";
   
$result mysql_query($sql);
echo 
"1";
}


  #2 (permalink)  
Antiguo 04/12/2009, 08:01
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: No me quita los acentos!!

$filer=str_replace(" ", "_", elimina_acentos($_FILES['Filedata']['name']); <-- te falta cerrar un parentesis

$filer=str_replace(" ", "_", elimina_acentos($_FILES['Filedata']['name']));


deberias usar un programa que te resalte los errores de sintaxis sirve de mucho :P

saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 04/12/2009, 08:27
 
Fecha de Ingreso: noviembre-2007
Mensajes: 229
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: No me quita los acentos!!

Muchas gracias si que es verdad que me habia dejao un parentesis pero igualmente ese no es el problema acabo de probar un video con este titulo...

el último y una vez subido al servidor me queda asi...el_Aºltimo

no lo entiendo...haber si alguien me puede ayudar...

GRACIAS
  #4 (permalink)  
Antiguo 04/12/2009, 08:29
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: No me quita los acentos!!

las funciones las tienes en la misma hoja? si no, ases un include?
solo tienes 1 funcion con ese nombre?
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 04/12/2009, 12:59
 
Fecha de Ingreso: noviembre-2007
Mensajes: 229
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: No me quita los acentos!!

si si solo tengo una función en esa pagina y la tengo ahi incluida en total ek archivo es si...

Código PHP:
<?php
require_once("db.php");

function 
elimina_acentos($cadena){
$tofind "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ()";
$replac "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn__";
return(
strtr($cadena,$tofind,$replac));
}


if (!empty(
$_FILES)) {
    
$tempFile $_FILES['Filedata']['tmp_name'];
    
$targetPath $_SERVER['DOCUMENT_ROOT'] . $_GET['folder'] . '/';
$id=$_GET['id'];
$filer=str_replace(" ""_"elimina_acentos($_FILES['Filedata']['name']));
$filer=str_replace("&""and"$filer);
//$filter=elimina_acentos($filter);
$extension pathinfo($filerPATHINFO_EXTENSION);
$filer basename($filer'.'.$extension)."_".$id.".".$extension;


    
$file=str_replace('//','/',$_GET['folder'] . '/'). $filer;
    
$targetFile =  str_replace('//','/',$targetPath) . $filer;

      
$datadate("d/m/Y");
      
mkdir(str_replace('//','/',$targetPath), 0777true);
   if(
move_uploaded_file($tempFile,$targetFile)){
   
$id=$_GET['id'];
   
$nam=$filer;
   
$title=$_GET['titulo'];
   
$tage=$_GET['tag'];
   
$cate=$_GET['categ'];
   
$user=$_GET['user'];

   
$sql "INSERT INTO filmfiles(id, file, fileroot, name, titulo, tags, categoria, user, date, biltrate, duracion, thumb, resolucion, video, audio) VALUES ( '$id', '$file', '$targetFile', '$nam', '$title', '$tage', '$cate', '$user', '$data', '', '', '', '', '', '')";
   
$result mysql_query($sql);
echo 
"1";
}

}








?>
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 16:26.