← Desenvolvimento

Não permitir espaços

Lida 3988 vezes

Offline

Thomato 
Membro
Mensagens 4125 Gostos 3
Feedback +2

Troféus totais: 28
Trófeus: (Ver todos)
Apple User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2

Boa noite.

Existe alguma maneira de não permitir que coloquem espaços num input?

O código do input é
Código: [Seleccione]
<input type="text" name="username" id="username">
Obrigado :)
Offline

Diogo Pinto 
Administrador
Mensagens 4400 Gostos 371
Feedback +4

Troféus totais: 37
Trófeus: (Ver todos)
Avatar Search Level 6 Linux User Mobile User Super Combination Combination Topic Starter 50 Poll Votes 10 Poll Votes

PHP, fazes um if com uma função a verificar a string e ver se tem um " ". Ou então, não sei se será possível em javascript...
Offline

Pedro Lopes 
Beta tester
Mensagens 3568 Gostos 18
Feedback +6

Troféus totais: 32
Trófeus: (Ver todos)
Level 6 Windows User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

Em javascript é possível, mas não recomendado, porque vasta o user ter o js desactivado no browser, que isso já não serve para nada, por isso a melhor opção é mesmo em php apagar os espaços ou não enviar o pedido caso tenha espaços.
Offline

Thomato 
Membro
Mensagens 4125 Gostos 3
Feedback +2

Troféus totais: 28
Trófeus: (Ver todos)
Apple User Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2

Pois, mas eu de PHP :\
Offline

=IceBurn= 
Membro
Mensagens 897 Gostos 3
Feedback +3

Troféus totais: 32
Trófeus: (Ver todos)
Windows User Level 6 Linux User Mobile User Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5

Olá Thomato!

Como é uma verificação simples, nem vais precisar de expressões regulares, podes usar o simples (e rápido) strpos();

Aqui vai um exemplo:
Código: (PHP) [Seleccione]
<?php

if( isset( $_POST['submeter'] ) ) {
    
    
$username trim$_POST['username'] );
    
    if( 
strpos$username' ' ) !== false ) {

        echo 
'Não são permitidos espaços no nome de utilizador.';
    
    } else {
        
        
/**
         * Podes aqui eventualmente fazer toda a verificação 
         * e validações restantes na variável $username
         * (Ex: verificar se o campo não está vazio, etc...)
         * 
         * Depois das validações, podes guardar na BD ou
         * ou processálos da forma que quiseres...
         */
        
    
}
    
}

?>


<form method="post" action="">
 <p>
  <input type="text" name="username" />
  <input type="submit" name="submeter" value="Submeter" />
 </p>
</form>