Jump to content


Photo

Formulário


  • Faça o login para participar
7 replies to this topic

#1 aln

aln

    'Design'

  • Usuários
  • 745 posts
  • Sexo:Não informado
  • Localidade:Mogi-guaçu / SP

Posted 12/09/2004, 21:07

Alguem sabe fazer limitações p/ formulários? Do tipo email por exemplo. Tem um campo pra pessoa por o e-mail, quando ela der enviar, o php checa se contém o "@" e "com" caso não tenha, retorna uma mensage de erro.
www.allanmc.com.br

#2 Without a Nick

Without a Nick

    Sem culpa no cartório

  • Usuários
  • 2378 posts
  • Sexo:Não informado
  • Localidade:Guarulhos

Posted 12/09/2004, 21:20

PHP
<?php
if($enviar) {
if(!
eregi(".+@.+\..+",$email)) {
 print(
"E-mail inválido.");
}
else {
 print(
"E-mail válido.");
}
}
else {
?>
<form action="<?=$PHP_SELF?>" method="post">
<input type="hidden" name="enviar" value="true">
E-mail:<br />
<input type="text" name="email"><br /><br />
<input type="submit" value=" ok "></form>
<?
}
?>


A função eregi e ereg verificam se um padrão corresponde ao valor de uma variável.

#3 Stars

Stars

    A Stranger In A Stranger Land

  • Usuários
  • 77 posts
  • Sexo:Não informado

Posted 12/09/2004, 21:40

Verificar unicamente se um email tem @ e .com é bem inútil. E a verificação do host? Além do que, não necessariamente um email tem um .com. O código abaixo é mil vezes mais seguro:

PHP

<?php
//contruibuição do Nuke Cops... para não dizer plágio... :p
preg_match('/^[a-z0-9&\'&#092;.\-_\+]+@[a-z0-9\-]+\.([a-z0-9\-]+\.)*?[a-z]+$/is', $email)

?>

Edição feita por: Stars, 12/09/2004, 21:42.

Top 5 Iron Maiden:

1 - The Number of the Beast
2 - Run to the Hills
3 - Dance of the Death
4 - Rainmaker
5 - Ghost of the Navigator

Up the Irons!

#4 LucasMS

LucasMS

    Super Veterano

  • Usuários
  • 2076 posts
  • Sexo:Não informado

Posted 12/09/2004, 21:49

putz, invision sux, deu pau no code ai ..

#5 apolo

apolo

    Php my life...

  • Usuários
  • 227 posts
  • Sexo:Masculino
  • Localidade:Rio das Ostras - RJ
  • Interesses:PHP e MYSQL

Posted 13/09/2004, 09:31

Aí..

PHP
<?php



if (trim($HTTP_POST_VARS["nome"]) == "") {
echo
"<font size=\"2&#092;" face=\"Trebuchet MS, Abadi MT Condensed Light\"><br><br><center>Problemas ao efetuar cadastro: <b>NOME</b> é um campo obrigatório!</center><BR><a href='javascript:history.go(-1);'><img src=\"images/botao_voltar.gif\" border=0>";
exit();
} elseif (
trim($HTTP_POST_VARS["email"]) == "") {
echo
"<font size=\"2&#092;" face=\"Trebuchet MS, Abadi MT Condensed Light\"><br><br><center>Problemas ao efetuar cadastro: <b>E-MAIL</b> é um campo obrigatório!</center><BR><a href='javascript:history.go(-1);'><img src=\"images/botao_voltar.gif\" border=0>";
exit();
} elseif(!(
ereg ("^.[a-z0-9_-]+@.+\\..+$", $HTTP_POST_VARS["email"]))) {
echo
"<br><br><center>Problemas ao efetuar cadastro: <b>E-MAIL</b> possui um formato inválido!</center><BR><a href='javascript:history.go(-1);'><img src=\"images/botao_voltar.gif&#092;" border=0>";
exit();
} elseif (!(
strlen($HTTP_POST_VARS["cep"]) == 8)){
echo
"<font size=\"2&#092;" face=\"Trebuchet MS, Abadi MT Condensed Light\"><br><br><center>Problemas ao efetuar cadastro: <b>CEP</b> seu cep está inválido!</center><BR><a href='javascript:history.go(-1);'><img src=\"images/botao_voltar.gif\" border=0>";
exit();
}


?>


esse último aí do cep, que limita...

[]'s
Apolo
QUE DEUS ABENÇOE TODOS !!!!
---------------
Espero ter Ajudado alguém,
----------------------
Antes de postar, veja se realmente não tem outro jeito..

#6 aln

aln

    'Design'

  • Usuários
  • 745 posts
  • Sexo:Não informado
  • Localidade:Mogi-guaçu / SP

Posted 14/09/2004, 14:21

É um script que eu arrumei, tem os campos: nome, cidade e endereço do site. Gostaria de fazer assim:

1. Quando o usuário não digitar nada em algum dos campos, retorna mensage de erro.

2. Chekar se no endereço do site, possui o "flogs.com.br"

Eu fiz da seguinte maneira:

     <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
          <table width="95%"  border="0" align="center" cellpadding="1" cellspacing="1">
            <tr>
            <td width="51%" align="right" class="text">Seu nome: </td>
            <td width="49%"><input name="nome" type="text" id="nome" size="20" maxlength="60"></td>
          </tr>
          <tr>
            <td align="right" class="text">Nome da sua cidade: </td>
            <td><input name="cidade" type="text" id="cidade" size="20" maxlength="60"></td>
          </tr>
          <tr>
              <td align="right" class="text">Endereço do seu flog:<br>
                <font size="1">Exemplo: http://www.flog.com.br/flog</font> </td>
            <td><input name="flog" type="text" id="flog" size="20" maxlength="60"></td>
          </tr>
          <tr>
            <td align="right" valign="top">&nbsp;</td>
            <td><input type="submit" name="submit" id="submit" value="Enviar"></td>...

<?php
if (trim($HTTP_POST_VARS["nome"]) == "") {
    echo "<font size=\"2\" face=\"Verdana\"><br><br><center>Problemas ao efetuar cadastro: <b>NOME</b> é um campo obrigatório!</center><BR><a href='javascript:history.go(-1);'>Voltar</a>";
    exit();
} elseif (trim($HTTP_POST_VARS["Cidade"]) == "") {
    echo "<font size=\"2\" face=\"Verdana\"><br><br><center>Problemas ao efetuar cadastro: <b>Cidade</b> é um campo obrigatório!</center><BR><a href='javascript:history.go(-1);'>Voltar</a>";
    exit();
} elseif(!(ereg ("^.[a-z0-9_-]+@.+\\..+$", $HTTP_POST_VARS["flog"]))) {
    echo "<br><br><center>Problemas ao efetuar cadastro: <b>FLOG</b> possui um formato inválido!</center><BR><a href='javascript:history.go(-1);'>Voltar</a>";
    exit();
?>

Mais não deu certo...
Alguém pode me ajudar?

----EDIT---------

Como fica o código apenas pra campo requerido ?

Não realize posta do tipo up


Edição feita por: thiagorsl, 15/09/2004, 01:10.

www.allanmc.com.br

#7 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 15/09/2004, 04:55

PHP
<?php
$nome
= $HTTP_POST_VARS['nome'];
$cidade = $HTTP_POST_VARS['cidade'];
$flog = $HTTP_POST_VARS['flog'];

$cont_error=0;

if (
$nome == "") {
$msg .= "Nome em branco!<br />";
 
$cont_error++;
}

if (
$cidade == "") {
$msg .= "Cidade em branco!<br />";
 
$cont_error++;
}

if ( !
eregi("flogs.com.br", $flog) ){
$msg .= "Endereço do flog não contem flogs.com.br<br />";
 
$cont_error++;
}

if (
$cont_error==0) {
//Aqui coloca o que acontecerá se der tudo certo
} else {

echo
"<b>Erro(s) encontrado(s):</b><br />";
echo
$msg;

}
?>

Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#8 aln

aln

    'Design'

  • Usuários
  • 745 posts
  • Sexo:Não informado
  • Localidade:Mogi-guaçu / SP

Posted 15/09/2004, 15:26

Ainda não deu certo :(

<?php

$nome = $HTTP_POST_VARS['nome'];
$cidade = $HTTP_POST_VARS['cidade'];
$flog = $HTTP_POST_VARS['flog'];
$data = date("d/m/Y"); // FORMATO : DD/MM/AAAA

$cont_error=0;

if ($nome == "") {
$msg .= "Nome em branco!<br />";
  $cont_error++;
}

if ($cidade == "") {
$msg .= "Cidade em branco!<br />";
  $cont_error++;
}

if ( !eregi("flogs.com.br", $flog) ){
$msg .= "Endereço do flog não contem flogs.com.br<br />";
  $cont_error++;
}

if ($cont_error==0) {
//Aqui coloca o que acontecerá se der tudo certo

$query = "INSERT INTO flogs(nome, cidade, flog, data) VALUES('$nome', '$cidade', '$flog','$data')";

$result = mysql_query($query) or die("Error in query: $query. " .mysql_error());

echo '<p align="center" class="text"><strong><br>
    </strong><em>Flog Adicionado com sucesso!<br>
    ( Obrigado por ter adicionado seu flog. )</em><br>
Clique <strong><a href="?area=flogs_index">Aqui</a></strong> para voltar à página inicial.</p>';

}
?>


Edição feita por: xpzinho, 15/09/2004, 15:30.

www.allanmc.com.br




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq