Právě je 28 bře 2024 16:31

Všechny časy jsou v UTC + 1 hodina




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 2 ] 
Autor Zpráva
 Předmět příspěvku: Mailový formulář s kontrolou polí
PříspěvekNapsal: 12 lis 2012 18:04 

Registrován:
12 lis 2012 17:54
Příspěvky:
1
Zdravím potřeboval bych úpravu scriptu, PHP neumím dělám grafiku takže mi prosím nepopisujte postup.

Na webu budou 5 inputů

E-mail, Telefon, Jiný kontakt, Text, Anti-spam

Mělo by to fungovat následovně input E-mail, Telefon a Jiný kontakt je povinný ale jen jeden ne všechny, ale jeden musí být vyplněn.

1. Pokud někdo odešle formulář a v kolonka email není vyplněna ale je vyplněná jedna z ostatních (telefon, jiný kontakt), tak script pokračuje, ale pokud je tam byď jen jeden znak tak zkontroluje jestli má email správný formát.

2. Pokud někdo odešle formulář a v kolonka telefon není vyplněna ale je vyplněná jedna z ostatních (email, jiný kontakt), tak script pokračuje, ale pokud je tam byď jen jeden znak tak zkontroluje jestli má telefon správný formát, pouze tudíž číslo.

3. Pokud někdo odešle formulář a v kolonka jiný kontakt není vyplněna ale je vyplněná jedna z ostatních (telefon, email), tak script pokračuje.

4. Zkontroluje jestli se ve vstupu nachází text zprávy.

5. Kontrola antispamu, by mela fungovat tak ze se bude automaticky generovat nahodné čísla třeba 5+6= A uživatel musí doplnit součet.

Na webu jsem nic nenašel a po 2,5 dnech hledání už to vzdávám a obracím se s pomocí na vás tak snad se najde nějaká spřízněná duše.

Děkuji za pomoc

Kód:
<?php
function checkmail($mail){
$mail = trim($mail);
if(strlen($mail)==0) return 0;
if(!preg_match("/^[a-z0-9_-]{1,20}+(\.){0,20}+([a-z0-9_-]){0,20}@(([a-z0-9-]+\.)+(com|net|org|mil|".
"edu|gov|arpa|info|biz|inc|name|[a-z]{2})|[0-9]{1,3}\.[0-9]{1,3}\.[0-".
"9]{1,3}\.[0-9]{1,3})$/is",$mail))
return 0;
return $mail;
}
if(isset($_POST['go']) || ($_POST['go'] == 'Odeslat'))
{
$_ERR='';
$_print='';   
$name = htmlspecialchars(strip_tags(trim($_POST['jmeno'])));
$prijmeni = htmlspecialchars(strip_tags(trim($_POST['prijmeni'])));
$email = htmlspecialchars(strip_tags($_POST['email']));
$pass = htmlspecialchars(strip_tags(trim($_POST['pass'])));
$text = htmlspecialchars(strip_tags(trim($_POST['text'])));
      if(!isset($name) OR $name == '')
      {
        $_ERR.='<span style="color:red">Chyba:&nbsp;Nezadal jste jméno!</span>'; 
      }
      elseif(!isset($prijmeni) OR $prijmeni == '')
      {
        $_ERR.='<span style="color:red">Chyba:&nbsp;Nezadal jste příjmeni!</span>';
      }
      elseif(checkmail($email) === 0)
      {
        $_ERR.='<span style="color:red">Chyba:&nbsp;Nezadal jste email nebo byl zadán špatně!</span>';
      }
      elseif(!isset($pass) OR $pass == '')
      {
        $_ERR.='<span style="color:red">Chyba:&nbsp;Zadejte heslo!</span>';
      }
      elseif(empty($text))
      {
        $_ERR.='<span style="color:red">Chyba:&nbsp;Napište zpravu!</span>';
      }
/*------NOVE----------*/   
      if($_ERR != '')
      {
        $_print = $_ERR;
      }
      else
      {
      echo'
     <script>
     alert("Data jsou odeslána")
     </script>
     ';
      }
/*-------KONEC--------*/   
}
?>
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title></title>
  </head>
  <body>
<?php
echo $_print;
?>
<form action="" method="POST">
   <table style="250px; border:3px solid black;">
    <tr><td style="width:100px;">Jméno:</td>
        <td style="width:150px;"> <input type="text" 
name="jmeno" value="<?php echo $name;?>"></td></tr>
      <tr><td style="width:100px;">Príjmení:</td>
        <td style="width:150px;"> <input type="text" 
name="prijmeni" value="<?php echo $prijmeni;?>"></td></tr>
        <tr><td style="width:100px;">E-mail:</td>
        <td style="width:150px;"> <input type="text" 
name="email" value="<?php echo $email;?>"></td></tr>
      <tr><td style="width:100px;">heslo:</td>
        <td style="width:150px;"> <input type="password" 
name="pass"></td></tr>             
      <tr><td style="width:100px;">Zprava:</td>
        <td style="width:150px;"><textarea rows="5" cols="25" wrap="soft" 
name="text"><?php echo $text;?></textarea></td></tr>
      <tr><td colspan="2" style="width:250px; text-align:right;">
<input type="submit" name="go" value="Odeslat"></td></tr>
      </table>
    </form>
  </body>
</html>


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Mailový formulář s kontrolou polí
PříspěvekNapsal: 15 lis 2012 15:49 
C4 podpora
C4 podpora

Registrován:
30 čer 2009 08:14
Příspěvky:
8492
Dobrý den,

na tomto diskuzním fóru neprogramujeme skripty na základě nějaké specifikace. Fórum slouží jakou podpora zákazníků Webhostingu C4. Ale můžete se s dotazem vyzkoušet obrátit na některého z našich partnerů.

_________________
Radek Plašil
Webhosting C4
https://www.c4.cz/


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 2 ] 

Všechny časy jsou v UTC + 1 hodina


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
FTP Uploader
Staňte se naším zákazníkem!
Hledáme kolegy
PHP, MySQL Hosting
Návody pro C4

© 2009-2024 ČESKÝ WEBHOSTING s.r.o. Kontaktní e-mail: forum@c4.cz
Diskuzní fórum využívá technologie: phpBB, phpBB-SEO.com, phpBB.cz