Foros del Web » Programando para Internet » PHP »

No me convierte a minusculas

Estas en el tema de No me convierte a minusculas en el foro de PHP en Foros del Web. Por que aun que tengo el codigo siguiente Código PHP: <?php  do {  ?> <div onmouseover="this.style.background = '#EEEEEE';"  onmouseout="this.style.background = '#FFFFFF';" style=" border-bottom:2px solid #cccccc ">   <div class="notititle1"> <?php  echo  ucfirst ( $row_ultimas [ 'titulo' ]);  ?> </div> ...
  #1 (permalink)  
Antiguo 17/08/2008, 13:58
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 20 años, 3 meses
Puntos: 2
No me convierte a minusculas

Por que aun que tengo el codigo siguiente

Código PHP:
<?php do { ?>
<div onmouseover="this.style.background = '#EEEEEE';"  onmouseout="this.style.background = '#FFFFFF';" style=" border-bottom:2px solid #cccccc ">
  <div class="notititle1"><?php echo ucfirst($row_ultimas['titulo']); ?></div>
  <div class="detalle">Escrito por <?php echo $row_ultimas['escritor']; ?>. Fecha <?php echo $row_ultimas['date']; ?></div>
  <br />
  <div class="notihead"><?php echo $row_ultimas['resumen']; ?></div>
  
  <?php echo  "
    
         <div align=right><a href=\"javascript:popUp('http://www.elcapitolio.net/noticias/notas.php?id=$row_ultimas[id] ')\"><img src=\"/images/vernota2.gif\" width=66 height=15 border=0 /></a></div> 
         "
?> </div>
<?php } while ($row_ultimas mysql_fetch_assoc($ultimas)); ?>
         
         <?php
mysql_free_result
($ultimas);
?>
No me convierte el titulo a minusculas... me los sigue mostrando en mayusculas...
que es lo que pasa?
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #2 (permalink)  
Antiguo 17/08/2008, 14:00
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 9 meses
Puntos: 20
Respuesta: No me convierte a minusculas

Porque la función para las minúsculas no es ucfirst(), es strtolower()

Código PHP:
 <div class="notititle1"><?php echo strtolower($row_ultimas['titulo']); ?></div>
Ucfirst es para pasar a mayúsculas la primera letra de la cadena.
  #3 (permalink)  
Antiguo 17/08/2008, 14:03
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 20 años, 3 meses
Puntos: 2
Respuesta: No me convierte a minusculas

a ok tienes razon... oye pero una duda...

que pasara con mis ÁÉÍÓÚ esas no cambiaron.. no existe forma?? :S

Con una inversiÓn de poco mÁs de 6 millones de pesos, arrancaron las obras del programa rescate de espacios pÚblicos
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #4 (permalink)  
Antiguo 17/08/2008, 15:24
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 9 meses
Puntos: 20
Respuesta: No me convierte a minusculas

Código PHP:
<?
function minusculas($cadena)
  {
  
$cadena strtolower($cadena);
  
$cadena str_replace ("Á""á"$cadena);
  
$cadena str_replace ("É""é"$cadena);
  
$cadena str_replace ("Í""í"$cadena);
  
$cadena str_replace ("Ó""ó"$cadena);
  
$cadena str_replace ("Ú""ú"$cadena);

  return 
$cadena;
  }
?>

<div class="notititle1"><?php echo minusculas($row_ultimas['titulo']); ?></div>
Si no funcionase, en vez de poner "á" en el código, prueba con HTML por ejemplo "&aacute;"

  #5 (permalink)  
Antiguo 17/08/2008, 15:52
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 20 años, 2 meses
Puntos: 71
Respuesta: No me convierte a minusculas

Código PHP:
<?
function minusculas($cadena)
  {
    return 
strtr(strtolower($cadena), "ÁÉÍÓÚÀÈÌÒÙÄËÏÖÜ""aeiouaeiouaeiou");
  }
?>
Que tal esta funcion?
  #6 (permalink)  
Antiguo 17/08/2008, 16:08
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 9 meses
Puntos: 20
Respuesta: No me convierte a minusculas

Cita:
Iniciado por DooBie Ver Mensaje
Código PHP:
<?
function minusculas($cadena)
  {
    return 
strtr(strtolower($cadena), "ÁÉÍÓÚÀÈÌÒÙÄËÏÖÜ""aeiouaeiouaeiou");
  }
?>
Que tal esta funcion?
Un atentado contra la Real Academia Española No deja tildes
  #7 (permalink)  
Antiguo 17/08/2008, 23:49
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 20 años, 2 meses
Puntos: 71
Respuesta: No me convierte a minusculas

Cita:
Iniciado por david_M_G Ver Mensaje
Un atentado contra la Real Academia Española No deja tildes
Mosquis!
Código PHP:
<?
function minusculas($cadena)
  {
    return 
strtr(strtolower($cadena), "ÁÉÍÓÚÀÈÌÒÙÄËÏÖÜ""áéíóúàèìòùäëïöü");
  }
?>
Mejor así :)
  #8 (permalink)  
Antiguo 18/08/2008, 01:22
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: No me convierte a minusculas

¿no creen que le echan mucha crema a sus tacos?

en ese caso, cualquier otro usa mejores funciones (y propias).... creo que el caso es, dejar pensar un poquito a Capimaster y no ponerle todo al copia y pega... o si?

se repite, en ves de entrar a que te lean los mas rápidos del oeste... ponte a leer la referencia de PHP en su paginas oficial.... http://www.php.net/manual/es/ (y en español)

y si de paso les da por tragar karma, no les quites el gusto y diles que has aprendido ya algo..... suerte!

PDTA: me pregunto que pasaría si se le atora una frutilla en la garganta... xD
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 18/08/2008, 12:49
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 20 años, 3 meses
Puntos: 2
Respuesta: No me convierte a minusculas

Fatal error: Cannot redeclare minusculas() (previously declared in /home/elcapito/public_html/noticias/noti.php:79) in /home/elcapito/public_html/noticias/noti.php on line 79
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #10 (permalink)  
Antiguo 18/08/2008, 13:20
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: No me convierte a minusculas

Cita:
Iniciado por Capimaster Ver Mensaje
Fatal error: Cannot redeclare minusculas() (previously declared in /home/elcapito/public_html/noticias/noti.php:79) in /home/elcapito/public_html/noticias/noti.php on line 79
El error te lo dice, al parecer estas tratando de redeclarar la funcion minusculas. Asegurate de que solamente crees la funcion 1 vez.
  #11 (permalink)  
Antiguo 18/08/2008, 13:25
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: No me convierte a minusculas

Ese error te indica que ya definiste la función, como el problema es en el mismo file y en la misma linea es seguro que lo agregaste adentro de un loop por ende te da ese error.

Saludos.
  #12 (permalink)  
Antiguo 18/08/2008, 14:37
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 9 meses
Puntos: 20
Respuesta: No me convierte a minusculas

Este código permite declarar la función solo 1 vez.

Código PHP:
<?
if (!function_exists('minusculas'))

function 
minusculas($cadena)
  {
  
$cadena strtolower($cadena);
  
$cadena str_replace ("Á""á"$cadena);
  
$cadena str_replace ("É""é"$cadena);
  
$cadena str_replace ("Í""í"$cadena);
  
$cadena str_replace ("Ó""ó"$cadena);
  
$cadena str_replace ("Ú""ú"$cadena);

  return 
$cadena;
 }
}
?>
  #13 (permalink)  
Antiguo 18/08/2008, 17:15
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 20 años, 3 meses
Puntos: 2
Respuesta: No me convierte a minusculas

Ya intente con este ultimo y ya corre bien si errores.. lo que me sorprende es que las mayusculas siguen igual


ej. :

con una inversiÓn de poco mÁs de 6 millones de pesos, arrancaron las obras del programa rescate de espacios pÚblicos
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #14 (permalink)  
Antiguo 18/08/2008, 18:20
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 9 meses
Puntos: 20
Respuesta: No me convierte a minusculas

Tendrás que reemplazar HTML como puse en la primera respuesta.

Ej. &aacute;
  #15 (permalink)  
Antiguo 10/09/2008, 07:49
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 20 años, 3 meses
Puntos: 2
Respuesta: No me convierte a minusculas

Ya no le habia dado seguimiento a este tema, pero no lo he podido resolver.. tan sencillo que es...
ya intente remplasar de muchas formas, pero no remplaza las mayusculas ÁÉÍÓÚ con acento
estoy pensando que tal vez es por el cotejamiento de la base de datos....

En cual deberia de usarlo?
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #16 (permalink)  
Antiguo 10/09/2008, 08:09
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 20 años, 3 meses
Puntos: 2
Respuesta: No me convierte a minusculas

Jaja lo logre de esta manera... pero la verda no se me hace nada agradable ver signos en mis bases de datos en lugar de acentuaciones y eñes... parece que si es bronca del cotejamiento?? cual es el que se debe usar...


Código PHP:
<?php
function minusculas($cadena)
  {
  
$cadena ucfirst(strtolower($cadena));
  
$cadena str_replace ("Á""&aacute;"$cadena);
  
$cadena str_replace ("É""&eacute;"$cadena);
  
$cadena str_replace ("Í""&iacute;"$cadena);
  
$cadena str_replace ("Ó""&oacute;"$cadena);
  
$cadena str_replace ("Ú""&uacute;"$cadena);
  
$cadena str_replace ("ocotl""Ocotl"$cadena);

  return 
$cadena;
  }
?>
por cierto la Í no la pude cambiar por que no tengo ningun ejemplo en mis registros
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México

Última edición por Capimaster; 10/09/2008 a las 08:10 Razón: falto la i
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:55.