elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  Concat en MYSQL
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Concat en MYSQL  (Leído 5,116 veces)
marko1985

Desconectado Desconectado

Mensajes: 46


Ver Perfil
Concat en MYSQL
« en: 20 Febrero 2012, 13:32 pm »

Hola, tengo una consulta de este tipo

Código:
$sql="SELECT * FROM profPersonal WHERE CONCAT_WS(' ', nombre, apellido1) LIKE '%$nombreUsuario%'";

así no tengo problema, pero mi intención es añadir otro campo a la concatenación, con apellido2, sabe alguien si se puede hacer, la función concat y concat_ws de mysql no me aceptan un 3er campo, y necesitaría consultar esta nombre + apellido1 + apellido2

Gracias por adelantado


En línea

Carloswaldo
Traductor
Moderador Global
***
Desconectado Desconectado

Mensajes: 4.762


Nos reservamos el derecho de ban.


Ver Perfil WWW
Re: Concat en MYSQL
« Respuesta #1 en: 20 Febrero 2012, 16:05 pm »

¿Estás seguro que no te funciona? Porque concat_ws sí acepta más de 3 campos para concatenar.

Código
  1. $sql="SELECT * FROM profPersonal WHERE CONCAT_WS(' ', nombre, apellido1, apellido2) LIKE '%$nombreUsuario%'";


En línea





Dominio en venta: https://forojapones.com/
marko1985

Desconectado Desconectado

Mensajes: 46


Ver Perfil
Re: Concat en MYSQL
« Respuesta #2 en: 20 Febrero 2012, 16:18 pm »

Segurísimo, al menos desde PHP, pero supuestamente no debería de tener ningún inconveniente, volveré a intentarlo, para asegurarme. Gracias por la información ahora estoy más seguro de que estoy metiendo la pata en algo. Sólo falta averiguar el qué.
En línea

Carloswaldo
Traductor
Moderador Global
***
Desconectado Desconectado

Mensajes: 4.762


Nos reservamos el derecho de ban.


Ver Perfil WWW
Re: Concat en MYSQL
« Respuesta #3 en: 20 Febrero 2012, 16:21 pm »

Algún otro error debe estar ocurriendo ¿cuál es el problema que te da?
En línea





Dominio en venta: https://forojapones.com/
marko1985

Desconectado Desconectado

Mensajes: 46


Ver Perfil
Re: Concat en MYSQL
« Respuesta #4 en: 20 Febrero 2012, 16:52 pm »

Pues mira, si quieres te explico un poco el código para ponerte en contexto,

Tengo una tabla, con nombres, 1er apellido y 2º apellido. Hago una consulta a esta tabla con la concatenación para insertar el resultado a un array, y leerlo con jquery autocomplete.

pero ahora estoy comprobando que si hago lo mismo, que antes, es decir, concatenar con CONCAT_WS(' ', nombre, apellido1), pero con los valores CONCAT_WS(' ', apellido1, apellido2) no me chuta, cosa que no tiene sentido, me he fijado en que el campo este exactamente asi, y si que lo está, asi que ya estoy un poco mosquilla, no sé que estoy haciendo mal.

Código
  1. <?php
  2. class Buscador{
  3.  
  4. public function __construct(){
  5. include_once "../conex.php";
  6. }
  7.  
  8. public function buscaUsuario($nombreUsuario){
  9. $datos = array();
  10.  
  11. //$sql = "SELECT * FROM profPersonal WHERE nombre LIKE '%$nombreUsuario%'";
  12. $sql="SELECT * FROM profPersonal WHERE CONCAT_WS(' ', nombre, apellido1) LIKE '%$nombreUsuario%'";
  13.  
  14. $busqued=mysql_query($sql);
  15.  
  16. while($busqueda = mysql_fetch_array($busqued, MYSQL_ASSOC)){
  17. $datos[]=array("value"=>$busqueda['nombre']." ".$busqueda['apellido1']." ".$busqueda['apellido2'],
  18. "id"=>$busqueda['id_profPers']);
  19. }
  20.  
  21. return $datos;
  22. }
  23.  
  24. }
  25. ?>

Así funciona perfectamente. Que mosqueante, y seguro que es la mayor chorrada del mundo.
En línea

marko1985

Desconectado Desconectado

Mensajes: 46


Ver Perfil
Re: Concat en MYSQL
« Respuesta #5 en: 20 Febrero 2012, 16:59 pm »

Solucionado:

El tema estaba en que la tabla tenía un error, es decir era correcto el concat_ws con los 3 campos, el problema era el campo apellido 2 no tenía la codificacion correcta, era diferente a la demás que estaban en UTF-8.

Gracias por ayudarme majos.
En línea

Carloswaldo
Traductor
Moderador Global
***
Desconectado Desconectado

Mensajes: 4.762


Nos reservamos el derecho de ban.


Ver Perfil WWW
Re: Concat en MYSQL
« Respuesta #6 en: 20 Febrero 2012, 17:01 pm »

Ea! Que bueno que encontraste la solución. :)
En línea





Dominio en venta: https://forojapones.com/
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines