file upload in mailformulier
ik heb een scriptje om te gebruiken voor een formmail.
gemaakt via http://www.php-solutions.nl/scripts/formulier-generator/
dit werkt heel goed.
nu zou ik er graag nog een functie bij hangen om een foto/plaatje te kunnen toevoegen.
dus mensen die dit form dan invullen er dan ook meteen een foto bij kunnen hangen.
ik heb diverse dingen geprobeerd, maar het gaat niet zoals het zou moeten haha.
dit is het script, ( heb hem ff gekort)
Code (php)
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
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
<?php
if(function_exists('date_default_timezone_set')) { date_default_timezone_set('Europe/Amsterdam'); }
define('LF', "\n");
// Get a value from the $_POST array (case insensitive!!)
function getPost($key, $trim = false, $lowercase = false, $int = false)
{
if(isset($_POST[$key]))
{
$v = stripslashes($_POST[$key]);
if($trim)
{
$v = trim($v);
}
if($int)
{
$v = intval($v);
}
elseif($lowercase)
{
$v = strtolower($v);
}
return $v;
}
return '';
}
// Default values
$field_1 = '';
$field_2 = '';
$field_3 = '';
$field_4 = '';
$sHtml = '';
$sFormError = '';
// Process form
if(empty($_POST['form']) == false)
{
$field_1 = getPost('field_1', true);
if(strlen($field_1) == 0) { $sFormError = 'Vul a.u.b. alle verplichte velden in.'; }
$field_2 = getPost('field_2', true);
$field_3 = getPost('field_3', true);
if(strlen($field_3) == 0) { $sFormError = 'Vul a.u.b. alle verplichte velden in.'; }
$field_4 = getPost('field_4', true);
if(strlen($field_4) == 0) { $sFormError = 'Vink a.u.b. alle verplichte velden aan.'; }
if(in_array($field_4, array('nl', 'be', 'de')) == false) { $sFormError = 'Selecteer a.u.b. een geldige waarde.'; }
}
// Show form
if(empty($_POST['form']) || $sFormError)
{
$sHtml .= '<form action="" method="post">
<input name="form" type="hidden" value="form1">
<h1>Vul a.u.b. het onderstaande formulier in</h1>
' . $sFormError . '
<table border="0" cellpadding="3" cellspacing="0"><tr>
<td align="left" valign="top">naam *</td>
<td align="left" valign="top"><input name="field_1" type="text" value="' . htmlentities($field_1) . '"></td>
</tr>
<tr>
<td align="left" valign="top">adres</td>
<td align="left" valign="top"><input name="field_2" type="text" value="' . htmlentities($field_2) . '"></td>
</tr>
<tr>
<td align="left" valign="top">woonplaat *</td>
<td align="left" valign="top"><input name="field_3" type="text" value="' . htmlentities($field_3) . '"></td>
</tr>
<tr>
<td align="left" valign="top">land *</td>
<td align="left" valign="top"><select name="field_4"><option' . ((strcmp($field_4, 'nl') === 0) ? ' selected="selected"' : '') . ' value="nl">nl</option><option' . ((strcmp($field_4, 'be') === 0) ? ' selected="selected"' : '') . ' value="be">be</option><option' . ((strcmp($field_4, 'de') === 0) ? ' selected="selected"' : '') . ' value="de">de</option></select></td>
</tr>
<tr>
<td align="left" valign="top"> </td>
<td align="left" valign="top"><input type="submit" value="Verzenden"></td>
</table>
</form>';
}
else // Send form
{
$mail_to = '[email protected]';
$mail_from = '[email protected]';
$mail_subject = 'info@mijn domein';
$mail_message = 'Formuliergegevens: ' . LF . LF
. 'naam: ' . $field_1 . LF
. 'adres: ' . $field_2 . LF
. 'woonplaat: ' . $field_3 . LF
. 'land: ' . $field_4 . LF
. LF
. 'IP: ' . $_SERVER['REMOTE_ADDR'] . ', Datum: ' . date('d-m-Y') . ', Tijd: ' . date('H:i:s');
mail($mail_to, $mail_subject, $mail_message, 'From: ' . $mail_from);
$sHtml .= '<h1>Formulier verzonden</h1><p>Hartelijk dank voor het invullen van het formulier.</p>';
}
echo $sHtml;
?>
if(function_exists('date_default_timezone_set')) { date_default_timezone_set('Europe/Amsterdam'); }
define('LF', "\n");
// Get a value from the $_POST array (case insensitive!!)
function getPost($key, $trim = false, $lowercase = false, $int = false)
{
if(isset($_POST[$key]))
{
$v = stripslashes($_POST[$key]);
if($trim)
{
$v = trim($v);
}
if($int)
{
$v = intval($v);
}
elseif($lowercase)
{
$v = strtolower($v);
}
return $v;
}
return '';
}
// Default values
$field_1 = '';
$field_2 = '';
$field_3 = '';
$field_4 = '';
$sHtml = '';
$sFormError = '';
// Process form
if(empty($_POST['form']) == false)
{
$field_1 = getPost('field_1', true);
if(strlen($field_1) == 0) { $sFormError = 'Vul a.u.b. alle verplichte velden in.'; }
$field_2 = getPost('field_2', true);
$field_3 = getPost('field_3', true);
if(strlen($field_3) == 0) { $sFormError = 'Vul a.u.b. alle verplichte velden in.'; }
$field_4 = getPost('field_4', true);
if(strlen($field_4) == 0) { $sFormError = 'Vink a.u.b. alle verplichte velden aan.'; }
if(in_array($field_4, array('nl', 'be', 'de')) == false) { $sFormError = 'Selecteer a.u.b. een geldige waarde.'; }
}
// Show form
if(empty($_POST['form']) || $sFormError)
{
$sHtml .= '<form action="" method="post">
<input name="form" type="hidden" value="form1">
<h1>Vul a.u.b. het onderstaande formulier in</h1>
' . $sFormError . '
<table border="0" cellpadding="3" cellspacing="0"><tr>
<td align="left" valign="top">naam *</td>
<td align="left" valign="top"><input name="field_1" type="text" value="' . htmlentities($field_1) . '"></td>
</tr>
<tr>
<td align="left" valign="top">adres</td>
<td align="left" valign="top"><input name="field_2" type="text" value="' . htmlentities($field_2) . '"></td>
</tr>
<tr>
<td align="left" valign="top">woonplaat *</td>
<td align="left" valign="top"><input name="field_3" type="text" value="' . htmlentities($field_3) . '"></td>
</tr>
<tr>
<td align="left" valign="top">land *</td>
<td align="left" valign="top"><select name="field_4"><option' . ((strcmp($field_4, 'nl') === 0) ? ' selected="selected"' : '') . ' value="nl">nl</option><option' . ((strcmp($field_4, 'be') === 0) ? ' selected="selected"' : '') . ' value="be">be</option><option' . ((strcmp($field_4, 'de') === 0) ? ' selected="selected"' : '') . ' value="de">de</option></select></td>
</tr>
<tr>
<td align="left" valign="top"> </td>
<td align="left" valign="top"><input type="submit" value="Verzenden"></td>
</table>
</form>';
}
else // Send form
{
$mail_to = '[email protected]';
$mail_from = '[email protected]';
$mail_subject = 'info@mijn domein';
$mail_message = 'Formuliergegevens: ' . LF . LF
. 'naam: ' . $field_1 . LF
. 'adres: ' . $field_2 . LF
. 'woonplaat: ' . $field_3 . LF
. 'land: ' . $field_4 . LF
. LF
. 'IP: ' . $_SERVER['REMOTE_ADDR'] . ', Datum: ' . date('d-m-Y') . ', Tijd: ' . date('H:i:s');
mail($mail_to, $mail_subject, $mail_message, 'From: ' . $mail_from);
$sHtml .= '<h1>Formulier verzonden</h1><p>Hartelijk dank voor het invullen van het formulier.</p>';
}
echo $sHtml;
?>
hoe moet ik dat nu voor elkaar boxen?
Waarom define('LF', "\n");
PHP heeft dat reeds zelf: PHP_EOL.
dit form word verstuurd via mail, zou dan graag de foto in de mail als bijlage.
@ santhe ik weet het niet ik hem hem gebruikt van een generator en mijn eigen form is pakweg een 50 regels langer om in te vullen, vandaar dat ik deze eigenlijk ff lekker zo laat en hoop er een manier te vinden om fotos als bijlage te kunnen versturen.
of kijk ik nu met een scheel oog?? ;-)
Toevoeging op 14/01/2011 16:35:53:
form wordt verstuurd via mail... nou en? Dan heb je dat plaatje toch ook nodig in de compositie van de mail, dus moet het op de server staan, dus is het eerst een upload.
je hebt gelijk zo heb ik dat nog niet gezien..