Foutafhandeling

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Front end developer

Functie Het team bestaat uit User Experience designers, Data Scientists en Software Engineers met passie voor hun vak. De consultants en ontwikkelaars werken volgens de Design Thinking methode waarbij de eerste stappen van ontwerp en ontwikkeling zullen samenkomen in een proof of concept. Nadat is vastgesteld dat de oplossing voldoet aan de belangrijkste behoeftes worden producten of services gevalideerd door middel van korte iteraties. Hiermee zorgen ze ervoor dat het werk voldoet aan de technische vereisten en gebruikersbehoefte. Door het inzetten van de nieuwste technologieën die toekomstbestendig zijn weten ze klanten omver te blazen. Ook geven en organiseren ze veel

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Senior .NET Developer I goed salaris en deels thui

Bedrijfsomschrijving Mijn opdrachtgever is al ruim 20 jaar een gevestigde naam in de wereld van software ontwikkeling, met drie kantoren in de Randstad, waaronder Alphen aan den Rijn. Zij richten zich op het bouwen van IT-oplossingen die ervoor zorgen dat de productiviteit van klanten te allen tijden optimaal is. Hiervoor neemt jouw nieuwe werkgever het volledige ontwikkelproces tot haar rekening; van het eerste gesprek om de klantwensen in kaart te brengen, tot aan het uiteindelijke onderhoud van de opgeleverde oplossing. In totaal werken er inmiddels bijna 200 gemotiveerde IT-ers binnen deze organisatie. De gemiddelde leeftijd ligt rond de 35. Het

Bekijk vacature »

Starter/junior Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als starter/junior developer zul je direct begeleid worden door een senior uit het team. Het is van belang dat

Bekijk vacature »

Java developer

Functie Je gaat aan de slag als Tester voor een aantal mooie projecten. Je komt terecht in een DevOps team waar jij aan de slag gaat om de kwaliteit te waarborgen omtrent de maatwerk software voor de klanten. Je draait je hand er niet voor om de adviserende rol te bekleden op het gebied van testautomatisering en het opzetten van testframeworks. Zoals aangegeven ga je daadwerkelijk in het eigen team aan de slag en is het daarnaast ook gebruikelijk bij de klanten op locatie te komen om te werken aan de opdrachten. Je krijgt zodoende echt een mooie kijk in

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET Core developer wordt jij onderdeel van ons team met drie breed ontwikkelde software engineers en een flexibele schil met zes ervaren freelancers. Jij gaat mee in de visie van onze organisatie om als IoT partner in deze branche specifieke markt “het” platform te blijven innoveren en deze ook steeds slimmer te maken. Wij hopen dan ook zeker dit in de toekomst te kunnen realiseren met bijvoorbeeld Artificial Intelligence. De architectuur van ons platform is opgemaakt uit een deel eigen protocol, een interface laag en een laag welke de protocollen van derde partijen vertaald naar het eigen

Bekijk vacature »

Fullstack Developer

Functieomschrijving Voor een erkende werkgever in regio Etten-Leur zijn wij op zoek naar een Fullstack Developer met PHP/Laravel ervaring. Je gaat aan de slag met het bouwen van maatwerk software voor klanten die actief zijn in een specifieke markt. Als fullstack developer ben je samen met een enthousiast team van 7 collega’s verantwoordelijk voor de ontwikkeling, beheer en innovatie van informatiesystemen voor klanten in een specifieke branche. Verder ondersteun je complexe uitdagingen van klanten. Je brengt hun wensen in kaart en vertaalt deze door naar maatwerk software. Ervaring met Laravel is een must. Om de klant zo goed mogelijk te

Bekijk vacature »

IoT Software Developer PHP

Functie omschrijving Voor een klein softwarebedrijf in Breda, zijn wij op zoek naar een IoT software developer met kennis van PHP. In deze rol wordt je verantwoordelijk voor het vernieuwen van het multimedia platform van een super tof bedrijf in Breda. Je gebruikt PHP als programmeerlaag, en bent in staat om de helicopterview te pakken / projectmatig te werken. Jouw werkzaamheden zien er als volgt uit: Je gaat aan de slag met de ontwikkeling en vernieuwing van het "intern" ontwikkelde multimedia platform. Je neemt de lead in het moderniseren van het platform door het deels opnieuw op te zetten of

Bekijk vacature »

.NET developer

Functie Jouw team van vier collega .NET developers is verantwoordelijk voor het bouwen van de ETL processen van jouw nieuwe werkgever. Op dit moment wordt de front-end gedaan door een extern team van professionals. Echter wilt jouw nieuwe werkgever graag intern deze kennis uitbreiden en heeft dan ook de ambitie om dit voor het eind van het jaar intern te gaan aanpakken. Dit betekend dat jij als .NET ontwikkelaar de ideale kans krijgt om jezelf samen met jouw collega’s te ontwikkelen als full stack developer. Als .NET ontwikkelaar werk jij bij deze gave werkgever met C# .NET, SQL, JavaScript, REST

Bekijk vacature »

Senior Front-End Developer

As a Senior Front-end Developer you maintain the balance between creativity and functionality for our webshop, and you coach your fellow developers. How do I become a Senior Front-End Developer at Coolblue? As a Front-end Developer you work on the user-friendliness of our webshop for millions of customers. You enjoy working with the UX Designer to pick up stories. You get energy from coming up with creative solutions and are happy to present this within the team. You are also proud of your work and welcome all feedback. Would you also like to become a Senior Front-End Developer at Coolblue?

Bekijk vacature »

Front-end Developer

Functie omschrijving Gezocht front-end developer! Voor een toffe organisatie in de regio Rhenen zij wij op zoek naar een front-end developer die de eindverantwoordelijkheid op zich neemt van alles wat met design te maken heeft. In deze functie heb je een adviserende rol en beschik je over een grote dosis vakinhoudelijke kennis. Samen met collega’s en klanten overleg je om aangeleverde designs om te zetten naar unieke concepten. Zo draag jij je steentje bij aan de groeiambities van de klant. Voor klanten wordt jij het vaste aanspreekpunt als het gaat over planningen hierin houdt je alle betrokkenen goed op de

Bekijk vacature »

ERP Developer fleet managementsysteem

Wat ga je doen als ERP Developer fleet managementsysteem? Als ERP developer speel jij een belangrijke rol bij het doorvoeren van wijzigingen en verbeteringen binnen het fleet managementsysteem. Jouw expertise op het gebied van ERP systemen stelt jou in staat om de applicatie optimaal te laten functioneren en te blijven ontwikkelen. Als lid van het IT-team werk je nauw samen met andere developers en het business team om het fleet managementsysteem te integreren met andere systemen. Je bent verantwoordelijk voor het ontwikkelen van nieuwe functionaliteiten en het implementeren van verbeteringen op basis van de wensen en eisen van onze klanten.

Bekijk vacature »

Traineeship Java Developer

Functie Wat ga je doen als Java Developer? Jij start via ons bij deze opdrachtgever als Trainee Java ontwikkelaar, tijdens het traineeship ga je in 1 jaar van de basis naar professioneel Java ontwikkelaar. Je start samen met een groep trainees, volgt de aangeboden cursussen en gaat aan de slag bij één van onze opdrachtgevers. Na een aantal maanden volgt de volgende opdracht. Door de groei in jouw rol kom je op steeds complexere opdrachten terecht. Veel afwisseling dus. Collega’s met ervaring helpen je bij deze groei en samen met jouw coach ga je een persoonlijke leerplan opzetten om jou

Bekijk vacature »

Senior .NET developer

Klaar voor een nieuwe uitdaging? Welke technologieën gaan schuil achter de dagelijkse energievoorziening? Als senior .NET developer bij Kenter maak jij samen met je team het verschil, zowel voor de interne organisatie als voor eindklanten. Samen bouwen jullie aan innovatieve dienstverlening met behulp van de nieuwste technologieën en tools. Het is een functie met veel vrijheid, goede arbeidsvoorwaarden én je draagt jouw steentje bij aan de energietransitie. Klinkt dit als iets voor jou? Lees dan verder of solliciteer direct! Wat ga je doen als senior .NET developer? Als senior .NET developer bij Kenter (onderdeel van Alliander) ben je van onschatbare

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET Developer start jij in een team met 15 developers. In het team is er genoeg senioriteit om ervoor te zorgen dat jij de juiste begeleiding krijgt. Jij begint als eerst alle software pakketten en processen eigen te maken. Vervolgens ga jij deze software programmeren, onderhouden en testen. Ook ga jij research doen naar nieuwe mogelijkheden en zoek jij uit hoe je dit kan implementeren. Jullie werken intern op project basis en afhankelijk van het project werken jullie wel of niet iedere ochtend met een standup. Je gaat als Full stack developer aan de slag en gaat

Bekijk vacature »
Crude Oil

Crude Oil

06/10/2012 11:36:09
Quote Anchor link
Dit is een deel van mijn code voor een gebruiker-class:
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
<?php
class Gebruiker{

    private $id;
    private $gebruikersnaam;
    private $wachtwoord;
    private $email;
    private $rechten;
    
    function
id(){
        return $this->id;
    }
    
    function
setId($id){
        if(!empty($this->id)){
            //fout
        }
        if(!ctype_digit($id)){
            //fout
        }
        $this->id=$id;
    }
    
    function
gebruikersnaam(){
        return $this->gebruikersnaam;
    }
    
    function
setGebruikersnaam($gebruikersnaam){
        $this->gebruikersnaam=$gebruikersnaam;
    }
    
    function
setWachtwoord($wachtwoord){
        if(strlen($wachtwoord) < 6){
            //fout
        }
        $this->wachtwoord=sha1($wachtwoord);
    }
        
    function
email(){
        return $this->email;
    }
    
    function
setEmail($email){
        if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
            //fout
        }
        $this->email=$email;
    }
    
    function
rechten(){
        return $this->rechten;
    }
    
    function
setRechten($rechten){
        if($rechten <=3 && $rechten >0){
            $this->rechten=$rechten;
        }
else{
            //fout
        }
    }

?>


Nu gaat het hem om de foutafhandeling (zie ook de stukjes //fout). Als ik hiervoor exceptions gebruik wordt gelijk het hele script gestopt.
Als ik bijv twee dingen wil wijzigen (bijvoorbeeld email en rechten) en ik voer bij beide een ongeldige waarde in, dan krijg ik eerst een melding dat het emailadres onjuist is, dan zorg ik dat het emailadres juist is, maar dan blijkt dat ik de rechten ook niet goed had ingevuld. Ik zou dus graag willen dat beide fouten in een keer woorden weergeven.

Iemand een idee hoe ik dit kan aanpakken?
 
PHP hulp

PHP hulp

22/12/2024 20:01:09
 
Frank Nietbelangrijk

Frank Nietbelangrijk

06/10/2012 12:29:31
Quote Anchor link
een extra variabele in je class met bijvoorbeeld de naam $error

Dan zou je een constructor kunnen aanmaken:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php

function Gebruiker() {
$this->error = array();
}


?>


waarna je op de plaatsen waar je nu //fout hebt staan zoiets kunt schrijven als:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$this
->error[] = "er is een fout opgetreden bla bla bla";
?>


en dan kun je waar je bijv een functie toevoegen die de fouten laat zien:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

function showErrors() {
foreach($this->error as $err)
    echo $err."<br/>";
}


?>


daarna hoef je enkel deze functie aan te roepen om de fouten weer te geven.
Wel moet je er voor zorgen dat je de fouten afhandelt voor je foutmeldingen van PHP krijgt.

Ik moet trouwens zeggen dat je schrijfwijze uitstekend is, misschien een beetje overdone zelfs maar mijn complimenten het is heel erg goed leesbaar
 
Wouter J

Wouter J

06/10/2012 12:48:56
Quote Anchor link
Ik zou dan het observer pattern gebruiken. Even een snel getypte code:
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
<?php
interface SubjectInterface
{
    public function addObserver(ObserverInterface $observer);
    public function removeObserver(...);
    protected function notifyObservers();
}


interface ObserverInterface
{
    public function update();
}


class User implements SubjectInterface
{
    private $observers;
    private $error;

    private function setError($message)
    {

        $this->error = $message;

        $this->notifyObservers();
    }


    public function getError()
    {

        return $this->error;
    }


    protected function notifyObservers()
    {

        foreach ($this->getObservers() as $observer) {
            $observer->update($this->getError());
        }
    }


    // ... implement overige subject methods
}

class ErrorObserver implements ObserverInterface
{
    private $errors;

    public function __construct()
    {

        $this->errors = array();
    }


    public function update($errorMessage = null)
    {

        $this->errors[] = $errorMessage;
    }


    public function hasErrors()
    {

        return 0 < count($this->getErrors());
    }


    public function getErrors()
    {

        return $this->errors;
    }
}


// gebruik
$userErrorObserver = new ErrorObserver();
$user = new User();
$user->addObserver($userErrorObserver);

// ... vul de gegevens fout in

// in je HTML

if ($userErrorObserver->hasErrors()) : ?>

<ul class=errors>
    <?php foreach ($userErrorObserver->getErrors() as $error) : ?>
        <li><?php echo $error ?></li>
    <?php endforeach ?>
</ul>
<?php endif ?>
Gewijzigd op 06/10/2012 12:49:11 door Wouter J
 
Crude Oil

Crude Oil

06/10/2012 12:49:18
Quote Anchor link
@Frank
dank voor je reactie (en je compliment :P). Zo'n oplossing zal idd wel werken. Waar ik dan weer aan twijfel is of het wel correct is (om in oop te denken) error is tenslotte geen eigenschap van een gebruiker, ik zal er nog ns over nadenken

Toevoeging op 06/10/2012 12:58:13:

Wouter J op 06/10/2012 12:48:56:
Ik zou dan het observer pattern gebruiken. Even een snel getypte code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
...

Dankjewel voor deze code, ik zal er eens naar kijken (aangezien dit wat uitgebreider is en wat kennis inmiddels weer is weggezakt (tijdje niet meer dit gedaan) zal het wat tijd kosten, maar heel erg bedankt!
Gewijzigd op 06/10/2012 12:50:16 door Crude Oil
 



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.