Ver Mensaje Individual
  #11 (permalink)  
Antiguo 28/08/2013, 20:38
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Problema espacios en blanco a la izquierda mysql

Partamos de dos detalles:
1) Si realizas una prueba insertando manualmente y por SQL puro el registro en la tabla, verás que los espacios a la izquierda se conservan. Por ende, no es un problema generado en sí por la consulta SQL, sino al momento de construir la consulta en el script de PHP.
Esto lo puedes verificar simplemente haciendo esto manualmente en phpMyadmin:
Código MySQL:
Ver original
  1. INSERT INTO tbl_cod_medios_humanos (cod_medios_humanos, descripcion_cod_medios_humanos)
  2. VALUES ('              1.1.2.1. Especialista en hidrografía', '              1.1.2.1. Especialista en hidrografía');
2) Si nos atenemos a tu código, tenemos este segmento que es el que define la construcción del INSERT:
Código PHP:
Ver original
  1. $insertSQL = sprintf("INSERT INTO tbl_cod_medios_humanos (cod_medios_humanos, descripcion_cod_medios_humanos) VALUES (%s, %s)",
  2.                        GetSQLValueString($_POST['cod_medios_humanos'], "text"),
  3.                        GetSQLValueString($_POST['descripcion_cod_medios_humanos'], "text"));

Ahora bien, si no me equivoco, de acuerdo a mis pruebas, sprintf() genera una cadena basada en una serie de X parámetros, pero eliminando cualquier cosa que exista antes del primer caracter en esos mismos parámetros... Vale decir, que sólo toma los caracteres no blancos.
¿Lo has considerrado?

Simplemente ejecuta esto:
Código PHP:
Ver original
  1. <?php
  2. $num = 5;
  3. $location = '           árbol';
  4.  
  5. $format = '       Hay  %d monos en el %s<br>';
  6. echo 'Deberia haber 7 espacios antes del texto:'.sprintf($format, $num, $location);
  7. ?>

Yo, al menos, obtengo esto:
Cita:
Deberia haber 7 espacios antes del texto: Hay 5 monos en el árbol
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 28/08/2013 a las 21:03