Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Moja klasa mail.
Forum PHP.pl > Forum > Przedszkole
K4mil94
Mam taki problem. Otóż napisałem klasę do wysyłania maili
  1. <html>
  2. <head>
  3. <title>Formularz kontaktowy</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. </head>
  6. <body>
  7. <?php
  8.  
  9. class mail { //Tworze klase
  10.    var $topic;
  11.    var $mail;
  12.    var $tekst;
  13.    var $podpisano;
  14.    
  15.    function mail($topic, $mail, $tresc, $podpis){ //Kostruktor
  16.    
  17.        $this->temat=$topic;
  18.        $this->email=$mail;
  19.        $this->tekst=$tresc;
  20.        $this->podpisano=$podpis;
  21.        
  22.    }
  23.    
  24.    
  25. }
  26.  
  27. function wyslijMail() { //Funkcja wysylania
  28.    $topic = $_POST['topic'];
  29.    $mail = $_POST['mail'];
  30.    $tresc = $_POST['tresc'];
  31.    $podpis = $_POST['podpis'];
  32.    
  33.    
  34.    if(isset($topic)) {
  35.    echo "Pole temet puste!<br />"; } else {}
  36.    if(isset($mail)) {
  37.    echo "Pole e-mail puste!<br />"; } else {}
  38.    if(isset($tresc)) {
  39.    echo "Nie wypełniono treści!<br />"; } else {}
  40.    if(isset($podpis)) {
  41.    echo "Nie podpisano się!<br />"; } else {}
  42.    
  43.    if(isset($_POST['sumbit'])) {
  44.        $mailer = new mail($topic, $mail, $tresc, $podpis);
  45.        $body = "$mailer->temat\n$mailer->tekst\nNapisał: $mailer->podpisano, $mailer->email";
  46.        @mail("tuitam14@gmail.com", "$mailer->temat", "$body");
  47.        echo "E-mail wysłany poprawnie!";
  48.        
  49.    } else {
  50.        echo "Nie można wysłać e-maila<br />Spróbuj ponownie<br />";
  51.    }
  52.        
  53.    }
  54.  
  55.  
  56. wyslijMail();
  57. ?>
  58. </body>
  59. </html>
Lecz kiedy wyśle e-maila dochodzi mi na e-mail lecz piszę że Pola puste.. Jak to usunąć ? Tak samo jest jak form miałem w jednym pliku z tym ;/ Do zobaczenia tu : http://simsnews.pl/test/form.php
nospor
o rety....Napisz mi prosze, co wedlug ciebie robi ta linijka:
if(isset($topic))
Co ten if sprawdza?
K4mil94
Sprawdza czy jest ustawione pole temat.
nospor
no bingo. no to teraz zobacz co robisz gdy jest ustawiona:
  1. <?php
  2. if(isset($topic)) {
  3.   echo "Pole temet puste!<br />"; }
  4. ?>

Jesli jest ustawiona to piszesz: Pole temat jest puste!!!

Naprawde tego nie widzisz?

ps: zamiast isset daj empty().
  1. <?php
  2. if(empty($topic)) {
  3.   echo "Pole temet puste!<br />"; }
  4. ?>

Jesli puste to wal komunikat. Przeciez to tak logiczne ze glowa mala...
K4mil94
Dalej mi pucza jak jest nie wypełnione.
nospor
Cytat
jak jest nie wypełnione.
No chyba ma pouczac jak jest nie wypelnione....
K4mil94
Zmieniłem wszystkie ify z isset na empty prócz sumbit. Jaki inny argument może być żeby sprawdzić w jednym ifie czy są puste pola ?

@nospor chodzi mi o to że wysyła e-maila
nospor
  1. <?php
  2. function wyslijMail() { //Funkcja wysylania
  3.   $topic = $_POST['topic'];
  4.   $mail = $_POST['mail'];
  5.   $tresc = $_POST['tresc'];
  6.   $podpis = $_POST['podpis'];
  7.  
  8.   $error = false;
  9.   if(empty($topic)) {
  10.   echo "Pole temet puste!<br />";    $error = true;}
  11.   if(empty($mail)) {
  12.   echo "Pole e-mail puste!<br />"; $error = true;}
  13.   if(empty($tresc)) {
  14.   echo "Nie wypełniono treści!<br />"; $error = true;}
  15.   if(empty($podpis)) {
  16.   echo "Nie podpisano się!<br />"; $error = true;}
  17.  
  18.   if(isset($_POST['sumbit']) && !$error) {
  19.       $mailer = new mail($topic, $mail, $tresc, $podpis);
  20.       $body = "$mailer->temat\n$mailer->tekst\nNapisał: $mailer->podpisano, $mailer->email";
  21.       @mail("tuitam14@gmail.com", "$mailer->temat", "$body");
  22.       echo "E-mail wysłany poprawnie!";
  23.      
  24.   } else {
  25.       echo "Nie można wysłać e-maila<br />Spróbuj ponownie<br />";
  26.   }
  27.      
  28.   }
  29. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.