LauraBokkers / educom-webshop-basis

0 stars 0 forks source link

Deze logica gaat over de 'flow' van het programma, zet dit in processRequest #26

Open JeroenHeemskerk opened 1 year ago

JeroenHeemskerk commented 1 year ago

In de code hieronder wordt de getRegisterData() functie aangeroepen, https://github.com/LauraBokkers/educom-webshop-basis/blob/ef6ec4a1a81c71ca70f69c609a1695269eb72db2/index.php#L64-L67 deze doet onder andere deze code: https://github.com/LauraBokkers/educom-webshop-basis/blob/ef6ec4a1a81c71ca70f69c609a1695269eb72db2/register.php#L12-L15 Echter dit is code die je niet wilt 'verstoppen' in zo'n functie omdat het de flow van het programma beïnvloedt. Deze code wil je dus in de index.php hebben staan

 case 'register': 
     $pageData = getRegisterData(); 
     if ($pageData ['valid']) { 
         registerUser($pageData); 

         require_once('login.php');
         $pageData = getInitialLoginFormData();          
     } 
     break;
JeroenHeemskerk commented 1 year ago

Als je je switch-case niet te groot wilt laten groeien, kan je het ook delegeren naar een functie maar ook binnen index.php

function processRequest($page) {
   /* ... */
   case 'register': 
       $pageData = doProcessRegesterRequest(); 
       break;
   /* ... */ 
}

function doProcessRegesterRequest() {
     $registerData = getRegisterData(); 
     if ($registerData ['valid']) { 
         registerUser($pageData); 

         require_once('login.php');
         $registerData = getInitialLoginFormData();          
     }
     return $registerData;
}