[PHP] If else klopt niet - unexpexted T_ELSE

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 »

Kevin Verblaauw

Kevin Verblaauw

13/09/2012 21:38:27
Quote Anchor link
Beste mensen.

Na een hele dag scripten zit ik er al redeleijk door heen ahah en mijn vraag was of juloie mij snel uit de brand kunnen helpen waar mijn fout zit !

de fout code melding is :


Parse error: syntax error, unexpected T_ELSE in /home/kevin/domains/kevin.xentia.nl/public_html/testing/formhtml.php on line 29

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
    if($_SERVER['REQUEST_METHOD'] == 'POST')
        {
            // Arrays declareren voor opslag van fouten en data
            $error = array();
            $data    = array();
        
            // Velden die in het formulier aanwezig moeten zijn
            $formuliervelden = array('voornaam', 'achternaam');
            
            // Alle velden doorlopen
            foreach($formuliervelden as $veld)
                {
                    // Controleren of er een waarde voor het formulierveld bestaat
                    if(isset($_POST[$veld]));
                    {
                        // Spaties aan begin en eind weghalen
                        $value = trim($_POST[$veld]);
                        
                        // Controle of variabele gevuld is
                        if($value == '')
                            {    
                                // Foutmelding toevoegen
                                $error[] = 'je bent vergeten om '.$veld.' in te vullen';
                            }
                            
                        // Ingevulde waarden aan data array toevoegen
                        $data[$veld] = $value;
                    }
                    else
                    {
                        $error[] = 'Het veld '.$veld.' is niet gepost';
                    }
                }
                
                // Controleren of er geen fouten opgetreden zijn
                if(empty($error));
                    {
                        // Formulier succes!
                        echo '<p> je hebt het formulier met succes ingevuld!</p>';
                        echo '<p> de volgende gegevens heeft u in gevuld</p>';
                        echo '<p> Voornaam: '.$data['voornaam']'</p>';
                        echo '<p> Achternaam: '.$data['achternaam'].'</p>';
                    }
                    else
                    {
                        // Fouten opgetreden: weergeven en terug naar formulier     
                        header('Refresh: 3; url=formhtml.php');
                        foreach($error as $errors);
                            {
                                echo '<p style="color:red">'.$error.'</p>';
                            }
                    }
                {
                    else header('Location: formhtml.php');
                }
        }
    ?>


Gewijzigd op 13/09/2012 21:39:34 door Kevin Verblaauw
 
PHP hulp

PHP hulp

25/11/2024 23:39:50
 
Obelix Idefix

Obelix Idefix

13/09/2012 21:42:07
Quote Anchor link
Je foutmelding geeft al aan waar je het moet zoeken.
Op regel 52 sluit je een else af met } en op regel 53 staat een {
 
Kevin Verblaauw

Kevin Verblaauw

13/09/2012 21:46:13
Quote Anchor link
moet ik m niet afsluiten en dan openen dan?


Toevoeging op 13/09/2012 22:11:11:

help me please :*(
 
Wouter J

Wouter J

13/09/2012 22:17:06
Quote Anchor link
Quote:
help me please :*(

We zijn hier om je te helpen, dus daar hoef je echt geen nieuwe reactie voor te geven.
Tevens zijn we hier vrijwillig, we reageren en helpen je wanneer we tijd en zin hebben. Wees blij dat we je helpen en ga niet zitten klagen als we 20 minuten niet reageren.

Alvast bedankt...

tevens zijn we hier op PHPhulp niet echt blij met dit soort bump berichten binnen 24 uur, gelukkig houdt het systeem ze al grotendeels tegen.
 
- SanThe -

- SanThe -

14/09/2012 00:31:48
Quote Anchor link
Regel 14: if(isset($_POST[$veld]));

Wat doet die puntkomma daar?
Die sluit de if() waardoor else een melding geeft.
 
Kris Peeters

Kris Peeters

14/09/2012 10:12:35
Quote Anchor link
Het komt trouwens op meerdere plaatsen voor.

lijn 14, lijn 36, lijn 48

De puntkomma aan het einde van die lijnen horen daar niet.

---

Zie ook de reactie van Obelix en Idefix.
Die else staat daar niet goed.

de syntax is
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
if (conditie) // HIER VOORAL GEEN PUNTKOMMA !!!!!!!!!!!!!!!
{
  // blok code uitgevoerd indien de conditie true is/teruggeeft
}
else
{
  // blok code uitgevoerd indien de conditie false is/teruggeeft
}
?>


Nooit een else zetten waar geen if komt. Niet creatief zijn en de else binnen de accolades zetten.

---

En dat moet dus overal en altijd goed zitten. 1 puntkomma op de verkeerde plaats is meestal genoeg om alles te verpesten.

Wat jou ook niet helpt, is je systeem van indentering (= het aantal spaties in het begin van elke lijn). Probeer daar altijd heel proper te werken.
bv. lijn 36 en lijn 44.
Die if en else horen samen. Die zouden dan ook exact even veel moeten geïndenteerd zijn (Zoals je het doet op lijnen 14 en 29 is het wel okay). Dan valt het veel meer op wat bij wat hoort.
En dan haal je de fouten er veel vlugger uit.
Gewijzigd op 14/09/2012 11:56:24 door Kris Peeters
 



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.