Mail functie smtp server?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Daniel

Daniel

17/03/2008 08:42:00
Quote Anchor link
Goedemorgen,

Ik zit al een paar dagen te dubben wat er nou fout is.
Ik heb een SMTP server gedownload, en heb een wamp5server om te testen.

Wat is de 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
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
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
<?php
 session_start();
?>

<html>
<?php

##############################################
##### file: logincheck.php                 ###
##############################################
#### bescrijving: Deze file checkt of de   ###
#### gebruiker de juiste informatie heeft  ###
#### ingevuld en dus moet worden ingelogd  ###
#### ook doet deze file het uitlog werk    ###
#### wanneer daarnaar gevraagd wordt       ###
##############################################

##MYSQL DATABASE INFO##

DEFINE(USER, "root"); //username
DEFINE(PASS, ""); //password, laat 'm leeg als je er geen hebt
DEFINE(DB, "voorbeeld_database"); //de database

if(PASS == "" || !(mysql_connect(localhost, USER, PASS))) {
  mysql_connect(localhost, USER); //connect met localhost, zonder wachtwoord
}else{
  mysql_connect(localhost, USER, PASS); //connect met localhost, met wachtwoord
}

mysql_select_db(DB); //connect met database

if($_SESSION['logged'] == 1) { //als de gebruiker al is ingelogd
  //hier wat er moet komen voor gebruikers die al zijn ingelogd en op deze pagina komen...

  $get_userinfo = mysql_query("SELECT * FROM
                    accounts
                    WHERE
                    id = '"
.$_SESSION['userid']."'
                 "
);
  while($user = mysql_fetch_assoc($get_userinfo)) {
     $_SESSION['username'] = $user['username'];

  }
}
else{

if(!empty($_POST)) {

if(!empty($_POST['Login'])) { //als-ie probeert in te loggen
if($_SESSION['tries'] < 5) {
  //zet de ingevulde gegevens in variablen
  $email = $_POST['user_username1'];
  $password = mysql_real_escape_string($_POST['user_username']);

  //kijk of het account bestaat, de login geldig is
  $check_login = mysql_query("SELECT
                  id
                  FROM
                  accounts
                  WHERE
                  email = '"
.$email."'
               && password = '"
.$password."'
                  LIMIT 1
                 "
);

  //check het
  if(mysql_num_rows($check_login) == 1) {
    //het account bestaat, de login is geldig
    $_SESSION['logged'] = 1; //bewijs van dat de gebruiker is ingelogd
    while($row = mysql_fetch_assoc($check_login))
    {

      $_SESSION['userid'] = $row['id'];
     echo "";
    }

    if(mysql_num_rows($check_login) > 0) {
     echo "";
    }

    $valid = 1;
    echo header('Location: ingelogd.php');
  }
else{
    //account niet gevonden; bestaat niet, de login is ongeldig
    $invalid = 1;
    if(!isset($_SESSION['tries']) || empty($_SESSION['tries']))
    {

      $SESSION['tries'] = 1;
    }

    else
    {
      $_SESSION['tries'] = $_SESSION['tries'] + 1;
    }

    echo "<font color='red'><b>ERROR:</b> Ongeldige login!</font>";
  }
}
else{
   echo "<font color='red'>U hebt te vaak achter elkaar geprobeerd in te loggen met een ongeldig account. Probeer het later nog eens.</font>";
}

}
elseif(!empty($_POST['lost_pass'])) {
  $email = $_POST['user_username3'];
  $get_ui = mysql_query("SELECT *
                  FROM
                  accounts
                  WHERE
                  email = '"
.$email."'
                  LIMIT 1
              "
);
  if(mysql_num_rows($get_ui) > 0) {

   while($ui = mysql_fetch_assoc($get_ui)) {

    //zet z'n gebruikers info in variables
    $username = $ui['username'];
    $password = $ui['password'];

    //write the email
    $email_message = "Beste".$username.", \n U had uw password opgevraagt, en hier volgen uw account gegevens(inc. password): \n
    Gebruikersnaam: "
.$username."\n
    Password      : "
.$password."\n
    Email         : "
.$email."\n
    \n Mvg, \n
    <organisatie naam hier"
;
    
    //andere email details
    $subject = "Uw account informatie";
    $to = $email;
$headers = 'From: [email protected]' . "\r\n" .
    'Reply-To: [email protected]' . "\r\n" .
    'X-Mailer: PHP/' . phpversion(); //voer bij From jouw email in, en bij Reply-to ook

    //verzend de email

   mail($to, $subject, $email_message, $headers)or die(error()."error");

  }
 }
else{
    echo "<font color='red'><b>ERROR:</b> Er is geen account gevonden met het opgegeven email.</font>";
 }

}
elseif(!empty($_POST['get_pass'])) {
    $charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; //uit deze charset worden random chars voor het password genomen, kan je aanpassen als je wilt
    $amount = 8;

  function
random_char($charset) {

     $length = strlen($charset)-1;
     $rand = mt_rand(0, $length);
     $char = $charset[$rand];

     return $char;
  }
  
  function
generate_password($charset, $amount) {

    $password = "";
    
    for($i=0; $i<$amount; $i++) {
     $password = $password.random_char($charset);
    }


    return $password;
 }

 
 $pass = generate_password($charset, $amount);

 echo "your password:".$pass;
      
}

}
else{

//je inlog form hier, buiten php om
?>

<body bgproperties="fixed"  background="ownage.jpg">


<form name="frmLogin" onSubmit="ShowBusy();" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
  <table height="380" cellSpacing="0" cellPadding="0" align="center" border="0" width="288">
    <tr>
      <td vAlign="center" style="font-family: verdana; font-size: 10px; color: #000000" height="359" width="288">
      <table id="inputarea" cellSpacing="0" cellPadding="0" border="1" style="width: 327; border-collapse: collapse" bordercolor="#000000">
        <tr>
          <td class="category_selected" bordercolor="#FFFFFF" width="325" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test4.JPG">
            <p><font size="2"><img src="icon_catmin.gif" align="absMiddle" border="0" width="9" height="9">&nbsp;</font><font style="font-size: 10pt">Inloggen</font></p>            </tr>
        <tr>
          <td id="elements" vAlign="top" style="font-family: verdana; font-size: 10px; color: #000000" width="325" bordercolor="#000000" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
          <table cellSpacing="0" cellPadding="2" border="1" bordercolor="#000000" style="border-collapse: collapse" bgcolor="#FFCC66" width="326">
            <tr>
              <td style="font-family: verdana; font-size: 10px; color: #000000" bordercolor="#000000" width="320" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
              <font size="2">Email adres:</font></td>
            </tr>
            <tr>
              <td style="font-family: verdana; font-size: 10px; color: #000000" bordercolor="#000000" width="320" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
              <input name="user_username1" type="text" class="input" value="@minvws.nl" size="50" maxLength="50"></td>
            </tr>
            <tr>
              <td style="font-family: verdana; font-size: 10px; color: #000000" bordercolor="#000000" width="320" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
              <font size="2">Wachtwoord:</font></td>
            </tr>
            <tr>
              <td style="font-family: verdana; font-size: 10px; color: #000000" bordercolor="#000000" width="320" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
              <input class="input" maxLength="20" name="user_username" size="36" type="password"></td>
            </tr>
            <tr>
              <td style="font-family: verdana; font-size: 10px; color: #000000" bordercolor="#000000" width="320" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
              <input type="submit" value=" " name="Login" style="background: url('btn_login.gif'); border: 0px; width: 66px; height: 17px;"></td>
            </tr>
            <tr>
              <td id="footer" align="right" style="font-family: verdana; font-size: 10px; color: #000000" width="320" bordercolor="#000000" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test.JPG">&nbsp;</td>
            </tr>
            <tr>
              <td style="font-family: verdana; font-size: 10px; color: #000000" bordercolor="#000000" width="320" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
              <font size="2">Heeft U momenteel nog geen account? Voer hier dan uw emailadres
              is:</font></td>
            </tr>
            <tr>
              <td id="footer" align="right" style="font-family: verdana; font-size: 10px; color: #000000" width="320" bordercolor="#000000" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
              <p align="left">
              <input class="input" maxLength="50" name="user_username4" size="50">
              <input type="submit" name="get_pass" value=" " style="background: url('verder.bmp'); border: 0px; width: 66px; height: 17px;"></td>
            </tr>
            <tr>
              <td style="font-family: verdana; font-size: 10px; color: #000000" bordercolor="#000000" width="320" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
              <font size="2">Wachtwoord vergeten? voer uw emailadres in:</font></td>
            </tr>
            <tr>
              <td id="footer" align="right" style="font-family: verdana; font-size: 10px; color: #000000" width="320" bordercolor="#000000" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test3.JPG">
              <p align="left">
              <input class="input" maxLength="50" name="email" size="50">
              <font size="2">              </font>              <b>
              <input type="submit" name="lost_pass" value=" " style="background: url('verder.bmp'); border: 0px; width: 66px; height: 17px;">
              </b></td>
            </tr>
          </table>          </td>
        </tr>
        <tr>
          <td id="footer" align="right" style="font-family: verdana; font-size: 10px; color: #000000" width="325" bordercolor="#000000" background="file:///C:/Documents%20and%20Settings/schayikds/Bureaublad/test4.JPG">&nbsp;</td>
        </tr>
      </table>
      </td>
    </tr>
    <tr>
      <td style="font-family: verdana; font-size: 10px; color: #000000" height="21" width="288">
      <font size="2"> door 18-17/21&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <a href="http://vwsintranet/"><font color="#000000">Min. VWS 2008</font></a></font><u><font size="2">
      </font>
      </u></td>
    </tr>
  </table>
</form>



</b>



</body>
<?php
}
}

?>


Als ik nu een mail wil versturen bij de functie wachtwoord vergeten bijv. zegt die Geen account gevonden.

Zou iemand mij kunnen helpen?

m.v.g.
 
PHP hulp

PHP hulp

11/01/2025 21:59:14
 
Jurgen assaasas

Jurgen assaasas

17/03/2008 09:50:00
Quote Anchor link
Voor een mail te verzenden moet overigens wel poort 25 open staan in je router. Heb je dit gedaan? Anders zal het mailen nl. nooit werken.
 
Daniel

Daniel

17/03/2008 10:11:00
Quote Anchor link
ja die staat open :)

krijg jij die melding niet dan?
 
Frank -

Frank -

17/03/2008 11:19:00
Quote Anchor link
Jouw internetprovider moet het ook nog accepteren dat jij een mailserver hebt draaien, dat is namelijk lang niet altijd het geval. Dit i.v.m. spam.

Welke provider heb jij?
 
Jurgen assaasas

Jurgen assaasas

17/03/2008 11:36:00
Quote Anchor link
pgFrank schreef op 17.03.2008 11:19:
Jouw internetprovider moet het ook nog accepteren dat jij een mailserver hebt draaien, dat is namelijk lang niet altijd het geval. Dit i.v.m. spam.

Welke provider heb jij?


Dat klopt maar ik denk eerder dat er iets mis gaat in de query, hij faalt nl op:if(mysql_num_rows($res) > 0){....
 
Daniel

Daniel

17/03/2008 11:48:00
Quote Anchor link
wat moet er dan komen? want ik heb net getest met een andere php mail script en die pakt die wel maar de smtp server laat het niet toe krijg je socket error 10061 ofzo :p

En deze pakt die niet dus dat is al raar
 
Jurgen assaasas

Jurgen assaasas

17/03/2008 12:15:00
Quote Anchor link
print de resultaten eens op je scherm zou ik zeggen. En zet eens boven aan in je script:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php

ini_set('display_errors',1); // 1 voor aan 0 voor uit.
error_reporting(E_ALL | E_STRICT); //Error reporting op zijn hoogste stand.

?>
Gewijzigd op 01/01/1970 01:00:00 door Jurgen assaasas
 
Jesper Diovo

Jesper Diovo

17/03/2008 14:10:00
Quote Anchor link
Zet de mail() functie ook binnen een if constructie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
if(mail('...')) {
// succesvol verzonden
} else {
// niet verzonden
}
?>


Zo weet je ook weer waar het fout gaat.
 



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.