Ver Mensaje Individual
  #23 (permalink)  
Antiguo 12/05/2012, 23:13
Avatar de stramin
stramin
 
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: capturar nombre de usuario logeado

Es común que la gente agregue espacios cuando ingresa datos en los formularios, ya que el sistema generalmente los elimina automáticamente (en otras palabras los programadores hemos mal acostumbrado a los usuarios facilitandoles el ingreso).

La razón por la que no es buena idea usar esta consulta:

SELECT * FROM orders WHERE usuario_name LIKE '%didakh%' ORDER BY id DESC limit 0, 10

Es que con ella podría ingresar un usuario simplemente escribiendo "dida", "da", e incluso sin escribir nada "".

Para este tipo de casos existe en php la funcion trim, que actua como repelente de asiáticos, la cual deberías poner en cada ingreso de formulario a tu base de datos.

Básicamente lo que hace es eliminar los espacios samurai que hayan alrededor del texto ingresado, podrías usarlo algo así:

$name=$_POST['name'];
$name=mysql_real_escape_string($name); // Para evitar que se guarde en tu BD alún caracter de escape o comilla
$name=trim($name); // para eliminar los espacios alrededor del texto
mysql_query("INSERT INTO names VALUES ('$name')");

Eso si eres un programador ordenado, ahora si eres un programador ahorrativo:

mysql_query("INSERT INTO names VALUES ('".trim(mysql_real_escape_string($_POST['name']))."')");

(Por cierto no soy racista ni nada, solo me hizo gracia el hilo oriental que llevamos XD)
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D