mail en opmaak probleem bij upload form

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Erwin b

Erwin b

11/07/2007 10:36:00
Quote Anchor link
Hallo allemaal,

Als er een bestand geupload word dan krijg ik en de uploader daar een mailtje van. Het lukt me niet om de inhoud van die mail onder elkaar te krijgen. Het word nu gewoon 1 zin achter elkaar. Hoe kan ik een soort van "enter" ingeven zodat het onder elkaar komt te staan. Nu gebeurt er dit: Naam: erwinToelichting: rrBestandsnaam: speelboomopmaatklein.jpg

En het tweede probleempje.

Ik gebruik templates voor de weergave van het form maar ook voor de fout meldingen van de checks. Nu kan ik de templates in de mail.php gewoon aanroepen maar het lukt me niet in de classes.php en hier zit de extensie check in, die melding wil ik ook via een template laten verschijnen.

mail.php
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
<?php

require("t_engine.php");
require("classes.php");
$template = new jtpl();
$template->readtemplate("templates/mail.tpl");

//als op de verzend knop is gedrukt dan
if(isset($_POST['submit']))
{

    //verzamel ingevoerde gegevens in $collect
    $collect = array();
    $collect['naam'] = $_POST['naam'];
    $collect['email'] = $_POST['email'];
    $collect['bericht'] = $_POST['bericht'];
    $collect['file'] = $_FILES['userfile']['name'];
    
    if(!checkmail($collect['email']))
    {

        $template->readtemplate("templates/mailerror.tpl");
        $template->display();
        die();
    }

    else
    
    
    if(!empty($collect['file']))
{


 
//check file size in bytes 5242880 is 5 mb
$maxsize = '5242880';
$filesize = filesize($_FILES['userfile']['tmp_name']);
if($filesize>$maxsize)
{


    
    $template->readtemplate("templates/bestandsgrote.tpl");
    $template->display();
    die();
}

else
{
//upload
upload(basename($_FILES['userfile']['name']));
}
}


    else
    {
    $template->readtemplate("templates/geenbestand.tpl");
    $template->display();
    die();
    
    }

    
    /**
     *  verander de emailinstellingen naar je eigen email adres!
     */

    $to      = '[email protected]';
    $subject = 'Er is een bestand geupload';
    $message = 'Naam: '.$collect['naam'];
    $message .= 'Toelichting: '.$collect['bericht'];
    $message .= 'Bestandsnaam: '.$collect['file'];
    
    $headers = 'From:  <[email protected]>' . "\r\n" .
    
        'Reply-To: [email protected]' . "\r\n" .
        'X-Mailer: PHP/' . phpversion();
    # voor HTML
    //$headers  .= "MIME-Version: 1.0\r\n";
    //$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    

    /**
     * --------------------------------------------------
     */

        
    $mail = mail($to, $subject, $message, $headers);
    
    //bedankt mail naar uploader
    $mail = mail($collect['email'], 'Uploaden van bestand', 'Beste, '.$collect['naam'].' Bedankt voor het uploaden van uw bestand, '.$collect['file'].' op www.erwinsedelpapegaaien.nl Vriendelijke groet, Erwin',$headers);
    
    
    if(!$mail)
    {

        print'Er is een fout met het versturen van de mail neem contact op met de webmaster of probeer het later nog eens terug';
    }

    else
    {
        $template->assignvar("NAAM", $collect['naam']);
        $template->readtemplate("templates/bedankt.tpl");
    }
        
}




$template->display();
?>


classes.php

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
<?php
//classes
/**
 * by vincent de haan
 */



    function upload($file)
    {

        $filename = $file;
        $allow[0] = "jpg";
        $allow[1] = "JPG";
        $allow[2] = "avi";
        $allow[3] = "AVI";
        $allow[4] = "mpg";
        $allow[5] = "MPG";
        $allow[6] = "mov";
        $allow[7] = "MOV";
        $allow[8] = "wmv";
        $allow[9] = "WMV";
        // $allow[5] = "exe"; enz.
        
        $uploadname = $filename;
            
        $extentie = substr($uploadname, -3);
        
        for ($i = 0; $i < count($allow); $i++)
        {

            if ($extentie == $allow[$i])
            {

            $check='ok';
            }
        }

        
        if ($check)
        {

            if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {  
                move_uploaded_file($_FILES['userfile']['tmp_name'], "upload/" . $uploadname);  
        
                //echo "Het bestand is geupload onder de naam: $uploadname";
            }
            else
            echo'kon niet worden gupload';
        }

        else
        {
            echo'alleen de volgende formaten zijn toegestaan: jpg, mpg, avi, mov en wmv.';
            die();
        }
        
    }
    
    function
checkmail($email)
    {

        $email_host = explode("@", $email);
        $email_host = $email_host[1];
        $email_resolved = gethostbyname($email_host);
        
        if($email_resolved == $email_host)
        {

            $valid = FALSE;
        }

        if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
        {

            $valid = TRUE;
        }

        else
        {
            $valid = FALSE;
        }

        return $valid;
    }

    
?>


groeten Erwin
Gewijzigd op 01/01/1970 01:00:00 door Erwin b
 
PHP hulp

PHP hulp

18/05/2024 02:06:24
 
Desertme(sander)

desertme(sander)

11/07/2007 10:38:00
Quote Anchor link
wat is je template hoe je het laat sturen
 
Web Smile

Web Smile

11/07/2007 10:41:00
Quote Anchor link
1e vraag:

je hebt ook helemaal niks van enters in je $message staan, je moet op de plaatsen waar een enter moet komen wel een enter plaatsen.

duss:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?
    $message
= 'Naam: '.$collect['naam'].'\n';
    $message .= 'Toelichting: '.$collect['bericht'].'\n';
    $message .= 'Bestandsnaam: '.$collect['file'].'\n';
    

?>
 
Desertme(sander)

desertme(sander)

11/07/2007 10:43:00
Quote Anchor link
zo kan het ook ja ik dacht dat ie bij zijn template geen enter heeft
 
Web Smile

Web Smile

11/07/2007 10:44:00
Quote Anchor link
probleem 2 gaat over de templates (misschien was het beter geweest om voor iedereen probleem 1 topic te maken =)

maar ik snap niet precies wat er fout gaat bij probleem nummero 2
 
Bart van der veen

bart van der veen

11/07/2007 11:27:00
Quote Anchor link
2 dingen: \n werk alleen maar tussen "\n" anders niet geen idee waarom dat is..

2e ding:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?
$headers
= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
//deze headers willen wel eens helpen
?>


ps nu word je mail gezien als html en kun je ook <br> gebruiken enz...
 
Erwin b

Erwin b

11/07/2007 11:45:00
Quote Anchor link
bedankt voor de snelle reactie :) Echter werkt het allebei helaas niet de <br> en de ."\n" niet.

wat de template betreft ik gebruik dan :

{

$template->readtemplate("templates/formaat.tpl");
$template->display();
die();
//echo'alleen de volgende formaten zijn toegestaan: jpg, mpg, avi, mov en wmv.';
//die();
}

ik zag dat ik de verkeerde classes had gepost excuus.

classes.php

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
<?php
//classes
/**
 * by vincent de haan
 */



    function upload($file)
    {

        $filename = $file;
        $allow[0] = "jpg";
        $allow[1] = "JPG";
        $allow[2] = "avi";
        $allow[3] = "AVI";
        $allow[4] = "mpg";
        $allow[5] = "MPG";
        $allow[6] = "mov";
        $allow[7] = "MOV";
        $allow[8] = "wmv";
        $allow[9] = "WMV";
        // $allow[5] = "exe"; enz.
        
        $uploadname = $filename;
            
        $extentie = substr($uploadname, -3);
        
        for ($i = 0; $i < count($allow); $i++)
        {

            if ($extentie == $allow[$i])
            {

            $check='ok';
            }
        }

        
        if ($check)
        {

            if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {  
                move_uploaded_file($_FILES['userfile']['tmp_name'], "upload/" . $uploadname);  
        
                //echo "Het bestand is geupload onder de naam: $uploadname";
            }
            else
            echo'kon niet worden gupload';
        }

        else
        {
            
            $template->readtemplate("templates/formaat.tpl");
            $template->display();
            die();
            //echo'alleen de volgende formaten zijn toegestaan: jpg, mpg, avi, mov en wmv.';
            //die();

        }
        
    }
    
    function
checkmail($email)
    {

        $email_host = explode("@", $email);
        $email_host = $email_host[1];
        $email_resolved = gethostbyname($email_host);
        
        if($email_resolved == $email_host)
        {

            $valid = FALSE;
        }

        if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
        {

            $valid = TRUE;
        }

        else
        {
            $valid = FALSE;
        }

        return $valid;
    }

    
?>
 
Erwin b

Erwin b

11/07/2007 17:47:00
Quote Anchor link
Het probleem van de "enters" is opgelost waarschijnlijk eerste x iets niet goed gedaan ik heb gebruik gemaakt van "\n" en het werkt :)

Iemand nog een idee waarom de template van uit de classes niet wilverschijnen?
 



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.