Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Leguim en 24 Marzo 2019, 19:33 pm



Título: [Pregunta]: No enviar espacios vacíos
Publicado por: Leguim en 24 Marzo 2019, 19:33 pm
Buenas.

Estoy intentando que un formulario no envié campos vacíos, lo cual funciona bien pero cuando el usuario sólo envía espacios en blanco, digamos las X ahora son Espacios en blanco, Digamos que envía esto al formulario.. "XXXXXXX" las X son todos espacios en blanco algo así => "           " pero el sistema no lo reconoce como vacío y se muestra igual, alguna manera de prevenir esto usando alguna función de PHP? Gracias!


Título: Re: [Pregunta]: No enviar espacios vacíos
Publicado por: dac en 24 Marzo 2019, 21:39 pm
Los campos de entrada <input ...> deben tener el atributo required, así el navegador prohíbe  dejar el campo en blanco. Justamente, como tu dices, esto solo soluciona parte del problema: entradas con solo espacios son consideradas como "no-vacias".

Si bien podrías validar esto en el lado del servidor (con PHP en tu caso) e indicar al usuario que su entrada es invalida, también podrías hacerlo en el lado del cliente con javascript. Idealmente en ambos extremos.

Como ejemplo si tienes un <input id="nombre" type="text"> podrías validarlo con javascript en un botón de envío, o cuando el input pierda el foco

Código:
let inputValue = document.getElementById("nombre").value;

if (inputValue.trim() == '') {
    alert("Campo nombre invalido");
}


Título: Re: [Pregunta]: No enviar espacios vacíos
Publicado por: Leguim en 24 Marzo 2019, 23:25 pm
Los campos de entrada <input ...> deben tener el atributo required, así el navegador prohíbe  dejar el campo en blanco. Justamente, como tu dices, esto solo soluciona parte del problema: entradas con solo espacios son consideradas como "no-vacias".

Si bien podrías validar esto en el lado del servidor (con PHP en tu caso) e indicar al usuario que su entrada es invalida, también podrías hacerlo en el lado del cliente con javascript. Idealmente en ambos extremos.

Como ejemplo si tienes un <input id="nombre" type="text"> podrías validarlo con javascript en un botón de envío, o cuando el input pierda el foco

Código:
let inputValue = document.getElementById("nombre").value;

if (inputValue.trim() == '') {
    alert("Campo nombre invalido");
}

Buenas! gracias desde ya por el tiempo en contestar a mi pregunta, ese fragmento de código JS como podría hacerlo pero con PHP?


Título: Re: [Pregunta]: No enviar espacios vacíos
Publicado por: Leguim en 26 Marzo 2019, 04:59 am
alguna ayudita?  ;-)