Ingevuld Formulier ook verzenden via smtp

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Bert Van den Brande

Bert Van den Brande

11/06/2013 08:45:35
Quote Anchor link
Op http://bert.sna-webo.be/scripts/sr_inschrijving.php heb ik een formulier waar de scheidsrechter kan inschrijven.
Ik wil echter dat als m'n op toevoegen klikt de inhoud van het formulier ook wordt verstuurd naar het e-mailadres dat de scheidsrechter zelf heeft opgegeven en ook naar een ander standaard e-mail adres.
Kan iemand me hiermee helpen?
 
PHP hulp

PHP hulp

18/12/2024 12:28:23
 
Ozzie PHP

Ozzie PHP

11/06/2013 08:47:42
Quote Anchor link
Wat is je vraag precies? Wat lukt je niet?
 
Bert Van den Brande

Bert Van den Brande

11/06/2013 08:54:12
Quote Anchor link
Ik heb geen idee hoe ik de inhoud van m'n formulier + nog wat standaard text naar die e-mailadressen kan sturen. Nu slaagt het formulier alle waarden mooi op in de database maar er moet ook nog een automatische e-mail verstuurd worden als m'n op toevoegen klikt.
 
Obelix Idefix

Obelix Idefix

11/06/2013 09:07:18
Quote Anchor link
In het code-blok waar de gegevens worden opgeslagen, neem je ook een stuk code op om de mails te versturen.
Gebruik om mail te versturen bij voorkeur phpmailer of swiftmailer. Met Google kun je beide eenvoudig vinden, inclusief voorbeelden.
Als je ergens op vastloopt: geef dan aub duidelijk aan waar je op vastloopt en wat je al hebt geprobeerd.
 
Bert Van den Brande

Bert Van den Brande

14/06/2013 12:10:14
Quote Anchor link
Ik probeer nu via php-mailer iets te versturen maar ik krijg volgende melding
Message was not sent.Mailer error: The following From address failed: [email protected] : Called Mail() without being connected

Dit is m'n code
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
require("class.phpmailer.php");
$mail = new PHPMailer();

$mail->IsSMTP();  // telling the class to use SMTP
$mail->Host     = "mail-out.telenet.be"; // SMTP server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "****";
$mail->Password = "****";
$mail->Port = 25;

$mail->From     = "[email protected]";
$mail->AddAddress("[email protected]");

$mail->Subject  = "First PHPMailer Message";
$mail->Body     = "Hi! \n\n This is my first e-mail sent through PHPMailer.";
$mail->WordWrap = 50;

if(!$mail->Send()) {
  echo 'Message was not sent.';
  echo 'Mailer error: ' . $mail->ErrorInfo;
}
else {
  echo 'Message has been sent.';
}



?>
 
- Ariën  -
Beheerder

- Ariën -

14/06/2013 12:31:38
Quote Anchor link
Even op Google gekeken:

Plaats dit er eens bij:
$mail->SMTPSecure = 'ssl';
 
Bert Van den Brande

Bert Van den Brande

14/06/2013 12:34:50
Quote Anchor link
Krijg nog steeds dezelfde melding
Message was not sent.Mailer error: The following From address failed: [email protected] : Called Mail() without being connected
 
Chris PHP

Chris PHP

14/06/2013 12:41:35
Quote Anchor link
Laat Telenet het wel toe om buiten hun netwerk e-mail's te verzenden? neem aan dat je hosting bedrijf niet bij Telenet zit, en veel providers (zoals UPC en Ziggo in NL) staan het niet toe om mail's te verzenden buiten hun netwerk.
 
Bert Van den Brande

Bert Van den Brande

14/06/2013 12:52:21
Quote Anchor link
Daar heb ik geen idee van, nog andere manieren om dit wel in orde te krijgen?
 
Chris PHP

Chris PHP

14/06/2013 12:55:36
Quote Anchor link
Kijk eens of dit script werkt op je eigen webserver (dus op het telenet netwerk). Anders kun je nog 100 dingen proberen, maar als Telenet het niet toelaat om buiten hun netwerk mail's te verzenden zal het nooit gaan werken.
 
Bert Van den Brande

Bert Van den Brande

14/06/2013 13:00:25
Quote Anchor link
Dit werkt wel
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
ini_set('SMTP','mail-out.telenet.be');
ini_set ('sendmail_from',"[email protected]");

$_to = "[email protected]";
$_onderwerp = "test mail 2";
$_bericht = "Testmailtje van uw liefste schatteke";
 if (mail($_to, $_onderwerp, $_bericht))
   {
echo"Mail is verzonden aan $_to.";}
 else
   {echo"ERROR: mailtje is niet verzonden!!!";}
?>


Komt toch ook van Telenet?

Maar hoe kan ik in dit implementeren?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
<?php
error_reporting(E_ALL);
ini_set('display_errors',1);

/******************
*Initialisatie
*******************/

 $_srv = $_SERVER['PHP_SELF'];
 session_start();
 $_output = "";
 // authorisation
 include("../php_lib/user_ok.inc.php");
 User_OK(4);
/******************
*        autoload
******************/

function __autoload($className) {
    require_once "../klassen/$className.class.php";
}


 include("../connections/pdo.inc.php");
 include("../php_lib/menu.inc.php");
try
{
           // toon formulier
    if (! isset($_POST["submit"]))  // geen formulier
    {
        // titel    
        $_output .= "<form id='club' method='post' action='$_srv' enctype='multipart/form-data'><fieldset><legend>Inschrijvingsformulier Scheidsrechter</legend><ol><li>";
        // vergunningnummer
            $_output.="<label>Vergunningnummer</label><input type='text' pattern='[0-9]{6,7}' name='Vergunningnummer' size='20' placeholder='Vergunningnummer' autofocus='autofocus' required/></li><li>";
        
        // familienaam
            $_output.= "
            <label>Familienaam</label><input type='text' name='Familienaam' size='40' placeholder='Familienaam'  required/></li><li>"
;
            
        // voornaam
            $_output.= "
            <label>Voornaam</label><input type='text' name='Voornaam' size='20' placeholder='Voornaam' required/></li><li>"
;
            
        // geboortedatum
            $_output.= "
            <label>Geboortedatum</label><input type='date' name='Geboortedatum' required/></li><li>"
;
            
        // veld straat
            $_output.= "
            <label>Straat</label><input type='text' name='Straat' size='45' placeholder='Straat' required/><input type='text' name='Nummer' size='10' placeholder='Nummer' required/><input type='text' name='Extra' size='10' placeholder='Extra'/></li>"

            ;
            
        //Postcode
            $_resultpostcode = $_PDO -> query("select * from t_gemeente;");
            if ($_resultpostcode -> rowCount() > 0)
            {

                $_output.= "<li><label>Postcode:</label><select name='Postcode' selected='---Kies een club---'>";
                while ($_row = $_resultpostcode -> fetch(PDO::        FETCH_ASSOC))
                {

                    $_output.= "<option value=" . $_row['d_gemeente_id'].">" .$_row['d_gemeentenaam'] . "&nbsp;" . $_row['d_postnummer'] ."</option></li>";                        
                 }
            }

            //Dit testveld verschijnt vlak achter postcode/gemeente maar is nu onzichtbaar
            $_output.= "</li><li><label>Test</label><input type='hidden' name='Test' size='0' placeholder='Test'/></li>";
            
        //Telefoon
            $_output.= "</li><li><label>Telefoon</label><input type='text' name='Telefoon' size='15' placeholder='Telefoon'/></li>";
            
            
        //GSM
            $_output.= "<li><label>GSM</label><input type='text' name='GSM' size='15' placeholder='GSM'/></li>";

        //Email
            $_output.= "</li><li><label>Email</label><input type='email' name='Email' size='50' placeholder='Email' required/></li>";    
    
        //Bankrekening
            $_output.= "</li><li><label>Bankrekening</label><input type='text' name='Bankrekening' size='50' placeholder='BE00000000000000' required/></li>";    
        //Club 1
        $_resultclub1 = $_PDO -> query("SELECT * FROM t_club WHERE d_club_id > 0 ORDER BY d_naam;");
        //select * from t_club ORDER BY d_naam
            if ($_resultclub1 -> rowCount() > 0)
            {

                $_output.= "<li><label>Club 1:</label><select name='Club1'>";
                while ($_row = $_resultclub1 -> fetch(PDO::        FETCH_ASSOC))
                {

                    $_output.= "<option value=" . $_row['d_club_id'].">" .$_row['d_naam'] . "&nbsp;" . $_row['d_stamnummer'] ."</option></li>";                        
                 }
            }

            //Dit testveld verschijnt vlak achter club1 maar is nu onzichtbaar
            $_output.= "</li><li><label>Test</label><input type='hidden' name='Test' size='0' placeholder='Test'/></li>";                        

        //Club 2
        $_resultclub2 = $_PDO -> query("SELECT * FROM t_club;");
        //select * from t_club ORDER BY d_naam
            if ($_resultclub2 -> rowCount() > 0)
            {

                $_output.= "<li><label>Club 2:</label><select name='Club2'>";
                while ($_row = $_resultclub2 -> fetch(PDO::        FETCH_ASSOC))
                {

                    $_output.= "<option value=" . $_row['d_club_id'].">" .$_row['d_naam'] . "&nbsp;" . $_row['d_stamnummer'] ."</option></li>";                        
                 }
            }

            //Dit testveld verschijnt vlak achter club2 maar is nu onzichtbaar
            $_output.= "</li><li><label>Test</label><input type='hidden' name='Test' size='0' placeholder='Test'/></li>";                                       
            
            

            $_output.= "<br><button type='submit' name='submit'>Toevoegen</button>
</fieldset>
        </form>"
;

    }

    else
    {
    
        if (!isset($_POST["$_srv"])){
            
            $_vergunningnummer = addslashes($_POST["Vergunningnummer"]);
            $_naam = addslashes($_POST["Familienaam"]);    
            $_voornaam = addslashes($_POST["Voornaam"]);
            $_geboortedatum = addslashes($_POST["Geboortedatum"]);
            $_straat = addslashes($_POST["Straat"]);
            $_nummer = addslashes($_POST["Nummer"]);            
            $_extra = addslashes($_POST["Extra"]);
            $_postcode =$_POST["Postcode"];
            $_telefoon = addslashes($_POST["Telefoon"]);
            $_GSM = addslashes($_POST["GSM"]);
            $_email = addslashes($_POST["Email"]);
            $_bankrekening = addslashes($_POST["Bankrekening"]);
            $_club1 = $_POST["Club1"];
            $_club2 = $_POST["Club2"];
            
    // query
        {    
        $_resultOK1 = $_PDO -> query("INSERT INTO t_scheidsrechter(d_vergunningnummer,d_naam, d_voornaam,d_geboortedatum,d_straat,d_nummer,d_extra,t_gemeente_d_gemeente,d_telefoon,d_gsm,d_email,d_bankrekening) VALUES ('$_vergunningnummer','$_naam','$_voornaam','$_geboortedatum','$_straat','$_nummer','$_extra','$_postcode','$_telefoon','$_GSM','$_email','$_bankrekening');");

        $_srid = $_PDO -> query("SELECT MAX(d_scheidsrechter_id) AS max_scheids FROM t_scheidsrechter;");

if ($_srid -> rowCount() > 0)
        {

            while ($_row = $_srid-> fetch(PDO::     FETCH_ASSOC))
            {

            $_ScheidsID = $_row['max_scheids'];    
            }
        }


    $_resultOK2 = $_PDO -> query("INSERT INTO t_sr_club(t_club_d_club_id, t_scheidsrechter_d_scheidsrechter_id) VALUES ('$_club1','$_ScheidsID');");
    
    $_resultOK3 = $_PDO -> query("INSERT INTO t_sr_club(t_club_d_club_id, t_scheidsrechter_d_scheidsrechter_id) VALUES ('$_club2','$_ScheidsID');");


$_output = htmlentities("$_POST[Voornaam] $_POST[Familienaam] is ingeschreven als scheidsrechter voor het seizoen 2013-2014.");


        
            }
        }
    }


// Object instantieren
    $_smarty = new My_smarty();

// We kennen de variabelen toe
    $_smarty->assign('menuh',menu(1,'H'));
    $_smarty->assign('menuv',menu(4,'VA'));
    $_smarty->assign('inhoud', $_output);
// display it
    $_smarty->display('test.tpl');

}


 catch( PDOexception $e ){
//doe iets met de foutmelding
//    log("../log/logfile.csv");
//    errorMessage();

echo $e->getMessage();

}
  

?>
 
Chris PHP

Chris PHP

14/06/2013 13:08:44
Quote Anchor link
In je eerste voorbeeld dat wel werkt gebruik je mail() en niet phpmailer, tevens pas je daar ook je php.ini aan.

Dat zijn dingen die je in het andere voorbeeld beide niet hebt gedaan. Ik ben niet bekend met phpmailer, dus ik haak hier af.
 
Bert Van den Brande

Bert Van den Brande

14/06/2013 13:13:14
Quote Anchor link
Ok maar weet je hoe het met mail() kan geïmplementeerd worden?

Toevoeging op 14/06/2013 13:31:06:

Ik kan er al voor zorgen dat er een e-mail wordt verstuurd naar het e-mail adres dat wordt ingevuld
1 probleem echter als je naar een telenet adres verstuurd komt dit niet aan.
Hoe kan dit opgelost worden?
 
Frank Nietbelangrijk

Frank Nietbelangrijk

14/06/2013 18:25:51
Quote Anchor link
Bert verander je email adres(sen) liever in fake adressen in verband met spam.
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

15/06/2013 11:01:20
Quote Anchor link
@Bert,

Moeilijk aan te geven, maar waarschijnlijk worden de mails er door telenets spamfilter(s) uitgevist.
Gewijzigd op 15/06/2013 14:42:56 door Ger van Steenderen
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.