Foros del Web » Programando para Internet » PHP »

Problema con PHP y String con tildes

Estas en el tema de Problema con PHP y String con tildes en el foro de PHP en Foros del Web. Buenas tardes. Vereis, estoy accediendo a mi BD y necesito acceder a cierto valor de este para construir una dirección URL: Código PHP: $sql = "SELECT * FROM NOMBRETABLA WHERE activo=1";     $q_dat = mysql_query($sql); ...
  #1 (permalink)  
Antiguo 20/11/2012, 14:54
 
Fecha de Ingreso: julio-2012
Ubicación: Madrid
Mensajes: 95
Antigüedad: 11 años, 9 meses
Puntos: 2
Problema con PHP y String con tildes

Buenas tardes.

Vereis, estoy accediendo a mi BD y necesito acceder a cierto valor de este para construir una dirección URL:

Código PHP:
$sql = "SELECT * FROM NOMBRETABLA WHERE activo=1";
    $q_dat = mysql_query($sql);
    while($r_dat=mysql_fetch_array($q_dat)) {
    ?>
    <li><?php
    
echo $r_dat["texto"];
    if (
$r_dat["archivo"]!="") {
        echo 
' <a href=". $a .'/documentos/'. $r_dat["archivo"] .'" target="_blank"><img src="img/ico_bajar.png" alt="descargar adjunto" width="16" height="16" border="0" align="absmiddle" /></a>';
El problema viene con los nombres con tildes, que no construye bien la URL y me da un error 404 en la web.

¿Cómo lo puedo solucionar? ¿Debo manipular el nombre con alguna función? ¿Con cual?
  #2 (permalink)  
Antiguo 20/11/2012, 14:56
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Problema con PHP y String con tildes

usa urlencode() para generar una URL válida y sin complicaciones
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 21/11/2012, 02:26
 
Fecha de Ingreso: julio-2012
Ubicación: Madrid
Mensajes: 95
Antigüedad: 11 años, 9 meses
Puntos: 2
Respuesta: Problema con PHP y String con tildes

Cita:
Iniciado por maycolalvarez Ver Mensaje
usa urlencode() para generar una URL válida y sin complicaciones
Lo he probado y sigue sin funcionar

Código PHP:
<?php
    $sql 
"SELECT * FROM NOMBRETABLA WHERE activo=1";
    
$q_dat mysql_query($sql);
    while(
$r_dat=mysql_fetch_array($q_dat)) {
    
?>
    <li><?php
    
echo $r_dat["texto"];
    if (
$r_dat["archivo"]!="") {
        echo 
' <a href="documentos/'$r_dat[urlencode("archivo")] .'" target="_blank"><img src="img/ico_bajar.png" alt="descargar adjunto" width="16" height="16" border="0" align="absmiddle" /></a>';
    }
    
?>
  #4 (permalink)  
Antiguo 21/11/2012, 02:32
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con PHP y String con tildes

No sé si es por despiste pero estás intentando usar la función de una forma demasiado freestyle.

Código PHP:
Ver original
  1. funcion($variable);
  #5 (permalink)  
Antiguo 21/11/2012, 04:41
 
Fecha de Ingreso: julio-2012
Ubicación: Madrid
Mensajes: 95
Antigüedad: 11 años, 9 meses
Puntos: 2
Respuesta: Problema con PHP y String con tildes

¿Debería de entonces hacer algo así?

Código PHP:
echo ' <a href="documentos/'urlencode($r_dat["archivo"]) .'" target="_blank"><img src="img/ico_bajar.png" alt="descargar adjunto" width="16" height="16" border="0" align="absmiddle" /></a>'

Etiquetas: mysql, sql, string, tabla, tildes
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 15:54.