Code geparsed in e-mail

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Johan Groenewold

Johan Groenewold

21/08/2010 14:59:16
Quote Anchor link
Hey,

Ik heb voor m'n vader die ziek in bed ligt een klein systeempje gemaakt waar hij z'n eten en drinken kan bestellen. De bestellingen worden dan naar ons toe gemaild. Het is een grapje, maar het is leuk als het werkt :)


Het probleem is als volgt: de bestelling komt van een formulier met radiobuttons maar die kan ik niet geparsed in de e-mail krijgen; ik krijg de code.

Hier is de betreffende code:
http://www.codedump.be/code/922/
(namen en e-mailadressen zijn geknipt)

De vraag is; hoe krijg ik het resultaat van de while loop (dus de bestelling) in de e-mail?


Alvast bedankt!

Edit: Let maar niet op de $getinfo =, die stond er nog van een vorig testje :P
Gewijzigd op 21/08/2010 15:01:50 door Johan Groenewold
 
PHP hulp

PHP hulp

29/11/2024 05:30:30
 
Noppes Homeland

Noppes Homeland

21/08/2010 15:14:32
Quote Anchor link
GVD, post relevante code hier en niet elders!!

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
<?php
if(isset($_GET['actie']) == "verzenden")
{

$to  = '*knip*' . ', ';
$to .= '*knip*';
$subject = 'Diner *knip*';
// message
message = "*knip* heeft zojuist een nieuwe bestelling ingevoerd!<br /> Het betreft het diner. Dit is de bestelling:<br /><br />" . $getinfo;

reset ($_POST);
       while (list($element, $value) = each($_POST))
       {

               if ($element !="submit")
              {

                       if ($element !="opmerkingen")
                       {

                               echo ("$element<br />");
                       }

                     elseif (!empty($value))
                      {

                              echo ("<br /><br /><br />$element:<br />$value<br />");
                      }
              }
       }

 
        $getinfo =
 
// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: service@localhost' . "\r\n";
 
        
        
if(!mail($to, $subject, $message, $headers))    {
        echo ("De bestelling kon niet geplaatst worden. Contacteer uw webmaster om hem over dit probleem te informeren");
        }
else {
mail($to, $subject, $message, $headers);
include ('succes.php');
}
 
}
else {
include ('header.html');
?>


Er kloppen al zaken niet:
0. if(isset($_GET['actie']) == "verzenden"), dit slaat helemaal nergens op isset geeft true of false terug en kan dus nooit maar dan ook nooit gelijk zijn aan een string 'verzenden'
1. je controleerd niet of het form daadwerkelijk is gepost, je kan niet op $_POST['submit'] testen want deze is de ene keer er wel en de andere keer weer niet
2. je controleerd en valideerd je $_POST waarden niet
3. de functie empty() is zinloos
4. php variabelen buiten quotes
5. die while lus slaat ook als een tang op een varken, een foreach is in dit geval dan een veel makkelijkere oplossing
Gewijzigd op 21/08/2010 15:20:51 door Noppes Homeland
 
Johan Groenewold

Johan Groenewold

21/08/2010 15:38:38
Quote Anchor link
Noppes Homeland op 21/08/2010 15:14:32:
GVD, post relevante code hier en niet elders!!

Er kloppen al zaken niet:
0. if(isset($_GET['actie']) == "verzenden"), dit slaat helemaal nergens op isset geeft true of false terug en kan dus nooit maar dan ook nooit gelijk zijn aan een string 'verzenden'
1. je controleerd niet of het form daadwerkelijk is gepost, je kan niet op $_POST['submit'] testen want deze is de ene keer er wel en de andere keer weer niet
2. je controleerd en valideerd je $_POST waarden niet
3. de functie empty() is zinloos
4. php variabelen buiten quotes
5. die while lus slaat ook als een tang op een varken, een foreach is in dit geval dan een veel makkelijkere oplossing

Sorry, ik kon niet echt een code-vak vinden tussen de BBcodes boven het tekstvak..

Maargoed.
1. Heb ik nu gefixed
2. Ik heb werkelijk geen flauw idee hoe dat moet. Ik kwam wel http://joebivins.com/2009/03/28/php-form-validation-continued/ tegen met:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
http://joebivins.com/2009/03/28/php-form-validation-continued/


Is dat iets?
3. Hoezo is het zinloos? Het klopt toch dat hij "opmerkingen" niet mee hoeft te sturen als die er niet zijn..?
4. Bedoel je dat dat niet moet (zoals bij $message) of juist wél (zoals bij de echo van $element)?
5. Die kwam rechtreeks uit het boek PHP5 van Peter Kassenaar, maar daar zitten wel meer fouten in. Ook gewijzigd nu.


Toevoeging op 21/08/2010 15:39:38:

Johan Groenewold op 21/08/2010 15:38:38:
Noppes Homeland op 21/08/2010 15:14:32:
GVD, post relevante code hier en niet elders!!

Er kloppen al zaken niet:
0. if(isset($_GET['actie']) == "verzenden"), dit slaat helemaal nergens op isset geeft true of false terug en kan dus nooit maar dan ook nooit gelijk zijn aan een string 'verzenden'
1. je controleerd niet of het form daadwerkelijk is gepost, je kan niet op $_POST['submit'] testen want deze is de ene keer er wel en de andere keer weer niet
2. je controleerd en valideerd je $_POST waarden niet
3. de functie empty() is zinloos
4. php variabelen buiten quotes
5. die while lus slaat ook als een tang op een varken, een foreach is in dit geval dan een veel makkelijkere oplossing

Sorry, ik kon niet echt een code-vak vinden tussen de BBcodes boven het tekstvak..

Maargoed.
1. Heb ik nu gefixed
2. Ik heb werkelijk geen flauw idee hoe dat moet. Ik kwam wel http://joebivins.com/2009/03/28/php-form-validation-continued/ tegen met:
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
    /**
     *  Provides form validation checking for fields.
     */
    class Form {

        private $name = '';
        private $fields = array();
        private $has_errors = false;

        function __construct($name) {
            $this->name = $name;
        }

        function setField($field, $name) {
            $this->fields[$name] = $field;
        }

        function getFields() {
            return $this->fields;
        }

        /**
         *  Validates the entire form by calling
         *  the validate routine on each field.
         *
         *  @param $request A HTTP $_GET, $_POST, $_REQUEST array.
         */
        function validate($request) {
            if (is_array($request)) {
                foreach ($request as $name => $value) {
                    if (isset($this->fields[$name])) {
                        $field = $this->fields[$name];

                        $field->validate($request);
                        if ($field->hasError() === true) {
                            $this->has_errors = true;
                        }
                    }
                }
            }
        }

        function hasErrors() {
            return $this->has_errors;
        }


Is dat iets?
3. Hoezo is het zinloos? Het klopt toch dat hij "opmerkingen" niet mee hoeft te sturen als die er niet zijn..?
4. Bedoel je dat dat niet moet (zoals bij $message) of juist wél (zoals bij de echo van $element)?
5. Die kwam rechtreeks uit het boek PHP5 van Peter Kassenaar, maar daar zitten wel meer fouten in. Ook gewijzigd nu.
 



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.