← Tutoriais

[PHP] Iniciantes, Formulários e validação no mesmo ficheiro

Lida 39994 vezes

Offline

cenourinha 
Elite
Mensagens 4094 Gostos 21
Troféus totais: 34
Trófeus: (Ver todos)
Mobile User Apple User Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4

Citação de: "ptrci"
A mim deu este erro:

Notice: Undefined variable: nome in c:\programas\easyphp1-8\www\teste3.php on line 7
NOP!

Linha 7: if($nome<>null and $mail<>null){


Penso que foste tu que tivestes aquele erro no Webtuga!
Tenta reinstalar o teu servidor!

Acho que é o teu server que tá marado!
Offline

ptrci 
Membro
Mensagens 144 Gostos 0
Troféus totais: 25
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 100 Posts

Na nunca postei nada no Webtuga.

Já apaguei os serviços no windows desintalei e apaguei os ficheiros do easyphp ( algum não são apagados). E reinstalei.

E continua o mesmo.

Até  refiz a configuração do apache ( abri o servidor para todos, só estava para o localhost ).

Este código têm que ter a ligação a BD ?? Eu não puz.
Offline

PT-NGS- 
Membro
Mensagens 90 Gostos 0
Troféus totais: 22
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 50 Posts 10 Posts

Boas..

A mim também dá esse erro!
Mas se eu mudar de if($nome<>null and $mail<>null) para if($nome=null and $mail=null) já não me dá erro..

Isto está correcto? :wink:
Offline

CasaTuga 
Membro
Mensagens 397 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Avatar Tenth year Anniversary Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3

Boas..

A mim também dá esse erro!
Mas se eu mudar de if($nome<>null and $mail<>null) para if($nome=null and $mail=null) já não me dá erro..

Isto está correcto? :wink:

Penso que não, porque o objectivo dessa linha è verificar se o campo de nome e email foram preenchidos. (Apesar de ser granda php Noob)

(Digg Rullez)
Offline

ricardor 
Membro
Mensagens 224 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1


Mas se eu mudar de if($nome<>null and $mail<>null) para if($nome=null and $mail=null) já não me dá erro..

$nome=null não estás a fazer comparação mas sim atribuição
Offline

Spread 
Membro
Mensagens 1433 Gostos 2
Troféus totais: 29
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

Tenta assim

if(($nome!=NULL) AND ($mail!=NULL))

e verifica see funciona.


Cump 8)
Offline

Henrique Mouta 
Equipa
Mensagens 1189 Gostos 3
Troféus totais: 31
Trófeus: (Ver todos)
Level 6 Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3

se queres fazer comparação basta pores  if($nome==null and $mail==null)
Offline

Spread 
Membro
Mensagens 1433 Gostos 2
Troféus totais: 29
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

se queres fazer comparação basta pores  if($nome==null and $mail==null)
Mas o objectivo é verificar se os campos não estão vazios.

Cumps 8)
Offline

anjo2 
Membro
Mensagens 3020 Gostos 0
Troféus totais: 31
Trófeus: (Ver todos)
Super Combination Combination Topic Starter 10 Poll Votes Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2

se queres fazer comparação basta pores  if($nome==null and $mail==null)
Mas o objectivo é verificar se os campos não estão vazios.

Cumps 8)
Aquilo não é um erro, diz lá "notice", logo é um aviso que a variável não existe. vou deixar aqui a solução para boa programação

if(!isset($nome) || empty($nome) || isset($mail) || empty($mail))
Se estiver vazio ou não estiver definido, vai para ali, depois é adicionarem um else...

Já agora, o tutorial está mal feito... é normal que não funcione... Tem que se dar os valores às variáveis...
$nome $_POST['nome'];
$mail $_POST['mail'];