Foros del Web » Programando para Internet » PHP »

validacion por trim

Estas en el tema de validacion por trim en el foro de PHP en Foros del Web. Hola les comento al usar la funcion trim() al ejecutar el validador del formulario raramente no funciona, les pongo el codigo para que vean que ...
  #1 (permalink)  
Antiguo 23/06/2014, 23:13
 
Fecha de Ingreso: diciembre-2012
Mensajes: 17
Antigüedad: 11 años, 4 meses
Puntos: 0
Pregunta validacion por trim

Hola les comento al usar la funcion trim() al ejecutar el validador del formulario raramente no funciona, les pongo el codigo para que vean que podria ser. Ademas lo saque de w3schools le saque par de lineas..

Código PHP:
Ver original
  1. <!DOCTYPE HTML>
  2. <html>
  3.     <head>
  4.     </head>
  5.     <body>
  6. <?php
  7. $name = $email = $website = "";
  8.  
  9. if ($_SERVER["REQUEST_METHOD"] == "POST") {
  10.    
  11.             $name = test_input($_POST["name"]);
  12.             $email = test_input($_POST["email"]);
  13.             $website = test_input($_POST["website"]);              
  14.         }
  15.  
  16.         function test_input($data) {
  17.             $data = trim($data);//Elimina espacio en blanco (u otro tipo de caracteres) del inicio y el final de la cadena
  18.             //$data = stripslashes($data);//Quita las barras
  19.             //$data = htmlspecialchars($data);
  20.             return $data;
  21.         }
  22.  
  23.         ?>
  24.  
  25.         <h2>PHP Form Validation Example</h2>
  26.        
  27.         <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
  28.             Name: <input type="text" name="name">
  29.             <br><br>
  30.             E-mail: <input type="text" name="email">
  31.             <br><br>
  32.             Website: <input type="text" name="website">
  33.             <br><br>
  34.             <br><br>
  35.             <br><br>
  36.             <input type="submit" name="submit" value="Submit">
  37.         </form>
  38.  
  39.         <?php
  40.         echo "<h2>Your Input:</h2>";
  41.         echo $name;
  42.         echo "<br>";
  43.         echo $email;
  44.         echo "<br>";
  45.         echo $website;
  46.         echo "<br>";
  47.         ?>
  48.  
  49.     </body>
  50. </html>
  51.  
  52.  
  53. <?php
  54.  
  55. //aca anda como debe ser
  56.  
  57. $vali = "\n\n\nHello World QWERTY!\n\n\n";
  58. echo "<br>" . test_input($vali);
  59. ?>

Como veran al pasarle una simple cadena la aregla bien como debe ser, pero dento del if al agarar los datos del formulario es como si los pasara sin tocar (solamente saca espacion en blanco):S

Espero sus respuestas
  #2 (permalink)  
Antiguo 24/06/2014, 01:56
 
Fecha de Ingreso: abril-2013
Mensajes: 61
Antigüedad: 11 años, 1 mes
Puntos: 4
Respuesta: validacion por trim

Y no te arroja ningun error?

Yo diria que lo te falla, es que llamas a la funcion "test_input" antes de definirla.

Por eso "arriba" no te funciona, y debajo, si.
  #3 (permalink)  
Antiguo 24/06/2014, 11:14
 
Fecha de Ingreso: diciembre-2012
Mensajes: 17
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: validacion por trim

ya probe da igual, aun mas remlase la funcion x el trim y da igual, no comprendo por que no anda dentro dentro de ese if
  #4 (permalink)  
Antiguo 24/06/2014, 11:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: validacion por trim

Pues nada, será que vives en un universo paralelo, yo acabo de copiar y pegar tu código y funciona perfectamente.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 24/06/2014, 12:27
 
Fecha de Ingreso: diciembre-2012
Mensajes: 17
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: validacion por trim

ese es el colmo que no me ande a mi xD, pero poniendo en formulario..
\t\t\t\tLiquid\r\nTension Experiment\r\n\r\n\r\n
\n\n\nHola Mundo!\n\n\n
o similares
en la parte baja del imput les muestra tal cual como ingresaron, o les limpia la cadena sacando los t, n, r,etc. por que a mi solo me limpia los espacios blancos de adelante y atras :S
  #6 (permalink)  
Antiguo 24/06/2014, 13:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: validacion por trim

Cita:
Iniciado por chiuvi4 Ver Mensaje
[...] por que a mi solo me limpia los espacios blancos de adelante y atras :S
Te invito a leer el manual, la función trim() elimina espacios (incluyendo saltos de linea y tabulaciones, etc.) al inicio y final de la cadena únicamente, nada más.

http://www.php.net/manual/es/function.trim.php
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 24/06/2014, 20:54
 
Fecha de Ingreso: diciembre-2012
Mensajes: 17
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: validacion por trim

Porque sera que no me anda , probe en otro lado y me metio a la bd con las tabulaciones y todo el choclo. Me anda perfectamente probando metiendo una cadena en php(tal cual el codigo que puse abajo) pero cuando agaro informacion del formulario y luego la quiero limpiar usando trim(), pero no hace nada ahi esta el problema

que piensan que podria ser??
  #8 (permalink)  
Antiguo 24/06/2014, 23:32
Avatar de a n g e l u s  
Fecha de Ingreso: enero-2006
Ubicación: Chile
Mensajes: 237
Antigüedad: 18 años, 3 meses
Puntos: 1
Respuesta: validacion por trim

hola

quizas debieras reiniciar el apache o el ngnix, actualizarlo, reinstalarlo.
__________________
Atte,
A n g e l u s
Concepción - Chile
más vale respuestas bien pensadas, que 7000 post
  #9 (permalink)  
Antiguo 27/11/2014, 10:56
Avatar de javicruzgv  
Fecha de Ingreso: diciembre-2011
Ubicación: Alcoy(Alicante)
Mensajes: 189
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: validacion por trim

Yo estoy en las mismas, lo he probado y se lo traga todo, como si no pusiera nada.

Alguien sabe como hacerlo?
__________________
http://www.cruzpyd.com
  #10 (permalink)  
Antiguo 27/11/2014, 11:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: validacion por trim

Cita:
Iniciado por javicruzgv Ver Mensaje
Yo estoy en las mismas, lo he probado y se lo traga todo, como si no pusiera nada.

Alguien sabe como hacerlo?
Muestra lo que haces y muestra los datos que utilizas para entender.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 27/11/2014, 11:38
Avatar de javicruzgv  
Fecha de Ingreso: diciembre-2011
Ubicación: Alcoy(Alicante)
Mensajes: 189
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: validacion por trim

Cita:
Iniciado por pateketrueke Ver Mensaje
Muestra lo que haces y muestra los datos que utilizas para entender.
Código PHP:
function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}

if (isset($_POST['usuario']) && isset($_POST['password'])){
    $usuario=test_input($_POST['usuario']);
    echo $usuario;
    $contrasenya=test_input($_POST['password']);
    echo $contrasenya;
}

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento sin título</title>
</head>

<body>

<div id="contenedorUsuarioAdmin">
    <form action="index.php" method="post">
           <label>Usuari:</label><br />
        <input name ="usuario" type="text" value="<?php if($nominex==1){ echo "Nom incorrecte"; };?>"/><br />
        <label>Contrasenya:</label><br />
        <input name="password" type="password" /><br />
        <input name="enviar" type="submit" value="Entrar" class="btnIndex"/>
    </form>
</div>

</body>

</html>
esto es parte del código que estoy utilizando. Si no entiendo mal la función es para que me elimine los caracteres y espacios para evitar que me metan consultas en los inputs no?

Pues nada me lo devuelve todo igual que lo pongo.
__________________
http://www.cruzpyd.com
  #12 (permalink)  
Antiguo 28/11/2014, 07:11
 
Fecha de Ingreso: abril-2008
Mensajes: 25
Antigüedad: 16 años
Puntos: 0
Respuesta: validacion por trim

Cita:
Iniciado por javicruzgv Ver Mensaje
[PHP]
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
hasta donde yo llego (que es nivel novato) el unico que te elimina algo es el trim, por ejemplo el htmlspecialchars($data); lo que hace es convertir:

- (&) ampersand: convertido a ‘&amp;’
- (“) comillas dobles: convertido a ‘&quot;’
- (‘) comilla simple: convertido a ‘'’
- (<) menor que: convertido a ‘&lt;’
- (>) mayor que: convertido a ‘&gt;’

haciendo esos caracters inofensivos, pero cuando tu los ves los ves igual...

Etiquetas: php+formularios
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 16:14.