Statements

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Casper B

Casper B

01/09/2011 13:42:53
Quote Anchor link
Goedemiddag iedereen,

Ik heb het volgende.
Ik ben zoals sommige van jullie weten bezig met een offerte formulier te realiseren door middel van php.
Dit is deels gelukt, maar werkt nog niet zoals het zou moeten.

Er moet aan een bepaalde voorwaarde gedaan worden, als dat zo is mag hij een email met de gegevens sturen.
Zie hier het if statement van mijn php.
De categorie moet eerst gelijk zijn aan huisstijl, wanneer dit is, moet het product gelijk zijn aan briefpapier. Als dit ook zo is, moet hij gaan controleren of er geen verplichten velden zijn leeg gelaten. Als dit wel is, moet hij een error geven en dus de echo.

Kort samengevat nogmaals. Hij moet controleren per product, afhankelijk welke de gebruiker gekozen heeft, of daarvan de verplichten velden wel zijn ingevoerd. Wanneer dit niet het geval is moet hij alleen van dat gekozen product de lege verplichten velden laten zien, door middel van de echo's.

Hopelijk kan iemand mij helpen.
Alvast bedankt.
Casper
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
        if($categorie == "huisstijl"){
            
            if($product == "briefpapier"){
                if($oplage == ""){
        
                echo "U bent vergeten de oplage in te vullen.<br />";
                
                
                $errors = "1";
                
                }

                
                if($papier == ""){
                
                echo "U bent vergeten het soort papier te selecteren.<br />";
                
                
                $errors = "1";
                
                }

    
                if($bedrukking == ""){
                
                echo "U bent vergeten het soort bedrukking te selecteren.<br />";
                
                
                $errors = "1";
                
                }

            }
// End briefpapier
            
            
            if($product == "enveloppen"){
                if($oplage == ""){
        
                echo "U bent vergeten de oplage in te vullen.<br />";
                
                
                $errors = "1";
                
                }

                
                if($uitvoering == ""){
                
                echo "U bent vergeten het soort uitvoering te selecteren.<br />";
                
                
                $errors = "1";
                
                }

                
                if($papier == ""){
                
                echo "U bent vergeten het soort papier te selecteren.<br />";
                
                
                $errors = "1";
                
                }

    
                if($bedrukking == ""){
                
                echo "U bent vergeten het soort bedrukking te selecteren.<br />";
                
                
                $errors = "1";
                
                }
                
            }
// End enveloppen

?>
Gewijzigd op 01/09/2011 14:33:16 door Niels K
 
PHP hulp

PHP hulp

14/03/2025 15:20:33
 
Ruben Vanhoeyveld

Ruben Vanhoeyveld

01/09/2011 14:04:26
Quote Anchor link
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
<?php
if(!empty($categorie)){
    if(!empty($product)){
        if(!empty($oplage) && !empty($uitvoering) && !empty($papier) && !empty($bedrukking)){
            //do it
        }else{
            echo 'U bent iets vergeten in te vullen';
        }
    }
else{
        echo 'Product niet ok';
    }
}
else{
    echo 'Categorie niet ok';
}

?>


Werk het op deze manier verder af en dan kom je er wel.
Gewijzigd op 01/09/2011 14:05:08 door Ruben Vanhoeyveld
 
Casper B

Casper B

01/09/2011 14:10:10
Quote Anchor link
Dan ben ik toch benieuwd waarom hij bij mij dan geen foutmeldingen geeft, wat eigenlijk wel zou moeten werken....?
 
Niels K

Niels K

01/09/2011 14:37:54
Quote Anchor link
Casper,

Eigenlijk is jouw manier van valideren (nog) beter dan die van Ruben. Lees namelijk dit artikel maar eens over empty.

Zie ook de alternatieve oplossingen aan het eind van het artikelen.

Maar even naar het begin van je formulier. Ik zie niet waar jij controleert dat het formulier verzonden is?

Als laatste, integers moet je niet in quotes zetten maar gewoon als volgt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$errors
= 1;
$errors = 0;
?>


Voor de overzichtelijkheid zou misschien beter met een boolean kunnen werken?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$errors
= true;
$errors = false;
?>


Voor een if statement maakt het niet uit, want als het goed is zijn false en 0 voor een if statement gelijk (mits je niet op type controleert, ===)

Toevoeging:

Beter is het om je foutmeldingen in een array op te vangen. Dan kan je ze op elk moment uitlezen en netjes tonen.
Gewijzigd op 01/09/2011 14:39:18 door Niels K
 



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.