Foros del Web » Programando para Internet » PHP »

Guardar en minúsculas

Estas en el tema de Guardar en minúsculas en el foro de PHP en Foros del Web. Hola mis amigos, quiero almacenar todo en minúsculas en mi DB, pero al combinarlo con el escape de caracteres me da un error y no ...
  #1 (permalink)  
Antiguo 06/06/2017, 12:34
Avatar de julia2021  
Fecha de Ingreso: diciembre-2014
Ubicación: Mexico
Mensajes: 152
Antigüedad: 10 años
Puntos: 11
Sonrisa Guardar en minúsculas

Hola mis amigos, quiero almacenar todo en minúsculas en mi DB, pero al combinarlo con el escape de caracteres me da un error y no me almacena el valor cuando tiene acentos. Me explico con código:
Así funciona bien:
Código PHP:
$this->nombre $this->db->real_escape_string($_POST['nombre']); 
Pero cuando quiero guardarlo todo en minúsculas, no me guarda los acentos
Código PHP:
$this->nombre $this->db->real_escape_string(strtolower($_POST['nombre'])); 
  #2 (permalink)  
Antiguo 06/06/2017, 13:41
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 21 años, 1 mes
Puntos: 154
Respuesta: Guardar en minúsculas

Hola julia2021,

Quizá esté diciendo una tontería, pero ¿has probado así?:

Código PHP:
Ver original
  1. $this->nombre = strtolower($this->db->real_escape_string($_POST['nombre']));

Ni lo he probado ni nada, solo se me ha ocurrido porque yo tenía un problema similar en un proyecto y cambiando el orden en el que se aplican las funciones, se resolvió.
  #3 (permalink)  
Antiguo 06/06/2017, 14:02
 
Fecha de Ingreso: agosto-2010
Ubicación: santiago, CHILE
Mensajes: 564
Antigüedad: 14 años, 4 meses
Puntos: 9
Respuesta: Guardar en minúsculas

creo haber tenido ese problema hace mucho

poner funciones dentro de otras a veces el resultado no es lo esperado sobre todo con los acentos cuando queria que todo fuese mayuscula el unico que quedaba en minuscula es el que tenia acento y viceverza.

prueba separando las funciones quizas pienses que es algo tonto como decia el filosofo bczgz pero prueba asi e invierte valores tambien como te lo mencionaron anteriormente.

hace un echo y pon el valor que tiene $_POST['nombre'] aqui para probarlo



$this->nombre = $this->db->real_escape_string($_POST['nombre']);
$this->nombre = strtolower($this->nombre);
  #4 (permalink)  
Antiguo 06/06/2017, 15:45
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 5 meses
Puntos: 379
Respuesta: Guardar en minúsculas

Primero tienes que convertir a minúsculas antes de hacer esl escapado de caracteres, por otro lado en lugar de usar strtolower usa mejor mb_strtolower por el detalle de los acentos cuando usas mayúsculas.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #5 (permalink)  
Antiguo 06/06/2017, 17:01
Avatar de julia2021  
Fecha de Ingreso: diciembre-2014
Ubicación: Mexico
Mensajes: 152
Antigüedad: 10 años
Puntos: 11
Respuesta: Guardar en minúsculas

Perfecto, mil gracias, me ha funcionado perfecto con mb_strtolower()

Etiquetas: acentos, caracteres, escapar, minusculas
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 21:06.