Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][inne]problem z wyslaniem maila
Kichu103
post 7.07.2012, 16:43:41
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 7.07.2012

Ostrzeżenie: (0%)
-----


Witam serdecznie

Jako ze dopiero zaczynam zabawę z WWW, php itd. Natrafiłem na pewien problem z którym nie potrafię sobie poradzić. a mianowicie jest to wysłanie maila ze strony flash AS3. Ogólnie mail się wysyła ale chciał bym dodać opcje sprawdzenia w php czy dane pola są uzupełnione w formularzu, z tego wzgledu ze mozna wysywal pusta wiadomosc :/. Kombinuje na rożne sposoby ale nie bardzo mi to wychodzi. Poniżej dodam dok AC3 jak również php.

Kod AS3
Kod
package main.strona.controlers
{
    import mx.controls.Alert;
    import mx.managers.CursorManager;
    import mx.rpc.events.FaultEvent;
    import mx.rpc.events.ResultEvent;
    import mx.rpc.http.HTTPService;
    
    import spark.components.TextInput;

    public class ContactController
    {
        [Bindable]
        public var imie:TextInput;
        [Bindable]
        public var nazwisko:TextInput;
        [Bindable]
        public var email:TextInput;
        [Bindable]
        public var temat:TextInput;
        [Bindable]
        public var wiadomosc:TextInput;
        
        private var _contactService:HTTPService;
        
        public function ContactController()
        {
        }
        public function sendEmail():void
        {
            CursorManager.setBusyCursor();
            disableForm(false);
            _contactService = new HTTPService();
            _contactService.url = "http://******.pl/php/emaila.php";
            _contactService.resultFormat = "text";
            _contactService.method = "POST";
            _contactService.addEventListener(ResultEvent.RESULT, onResultSendEmailData);
            _contactService.addEventListener(FaultEvent.FAULT, onFault);
            
            var obj:Object = new Object();
            obj["verify"] = "******.098";
            obj["imie"] = imie.text;
            obj["nazwisko"] = nazwisko.text;
            obj["mail"] = email.text;
            obj["temat"] = temat.text;
            obj["wiadomosc"] = wiadomosc.text;
            
            _contactService.send(obj);
        }
        private function onResultSendEmailData(event:ResultEvent):void
        {  

            var obj:Object = event.result;
            if (obj)
            {
                var isEmailSent:Boolean = String(obj) == "ok" ? true : false;
                
                if (isEmailSent)
                {
                    var mainApp:Main = imie.parentApplication as Main;
                    mainApp.currentState = "Wyslany_email";
                    
                }
            }
            disableForm(true);
            CursorManager.removeBusyCursor();
        }
        private function onFault(event:FaultEvent):void
        {
            Alert.show("Nie udało się wysłać wiadomości");
            disableForm(true);
            CursorManager.removeBusyCursor();
        }
        
        public function disableForm(isDisabled:Boolean):void
        {
            imie.enabled = isDisabled;
            imie.alpha = isDisabled ? 1 : 0.5;
            nazwisko.enabled = isDisabled;
            nazwisko.alpha = isDisabled ? 1 : 0.5;
            temat.enabled = isDisabled;
            temat.alpha = isDisabled ? 1 : 0.5;
            email.enabled = isDisabled;
            email.alpha = isDisabled ? 1 : 0.5;
            wiadomosc.enabled = isDisabled;
            wiadomosc.alpha = isDisabled ? 1 : 0.5;
                        
        }
        
    }
}


kod PHP
  1. <?php
  2. if( $_POST['verify'] == '*****.098' ){
  3. //adres E-mail
  4. $address = '******@gmail.com';
  5.  
  6. $headerFrom ='Content-type: text/html; charset=utf-8\r\n';
  7. $headerFrom .= 'From: Rejestracja '.$_POST['mail'];
  8.  
  9. $title = 'Wiadomosc od - '.$_POST['name'];
  10.  
  11. $content = 'Dane:<br/>';
  12. $content .= 'Imie nazwisko: '.$_POST['name'].'<br/>';
  13. $content .= 'E-mail: '.$_POST['mail'].'<br/>';
  14. $content .= 'Temat: '.$_POST['temat'].'<br/>';
  15. $content .= 'Wiadomosc: '.$_POST['wiadomosc'].'<br/>';
  16.  
  17. if ($_SERVER['HTTP_X_FORWARDED_FOR']) {
  18. $clientIp = $_SERVER['HTTP_X_FORWARDED_FOR']; }
  19. else {
  20. $clientIp = $_SERVER['REMOTE_ADDR']; }
  21.  
  22. $content .= '<br/><br/><br/>Zgloszenie wyslano z komputera: '.$clientIp;
  23.  
  24. //wyslanie maila do *******
  25. $mailSent = @mail($address, $title, $content, $headerFrom);
  26.  
  27.  
  28. echo $mailSent ? 'ok' : 'error';
  29. }
  30. else
  31. echo 'error';


Go to the top of the page
+Quote Post
patrysiek2
post 7.07.2012, 21:19:26
Post #2





Grupa: Zarejestrowani
Postów: 108
Pomógł: 5
Dołączył: 8.12.2011
Skąd: Łomża

Ostrzeżenie: (0%)
-----


If i funkcja empty.


--------------------
if($problem == 1)
{
header("Location: http://www.forum.php.pl");
}
else
{
thinking();
}
Go to the top of the page
+Quote Post
SmokAnalog
post 7.07.2012, 21:26:35
Post #3





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Żadne empty!
Go to the top of the page
+Quote Post
peter13135
post 7.07.2012, 21:39:46
Post #4





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


masz coś do funkcji empty ? biggrin.gif


--------------------
:)
Go to the top of the page
+Quote Post
SmokAnalog
post 7.07.2012, 21:51:13
Post #5





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Tak, jej zachowanie dotyczące łańcuchów znaków jest idiotyczne. Dlaczego po wpisaniu w pole tekstowe "0" mamy otrzymywać informację o braku wpisania czegokolwiek?!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 04:38