Error handeling

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C++ Developer

Functieomschrijving Ben jij als software engineer toe aan een nieuwe uitdaging? Dan zijn wij op zoek naar jou! Voor het maken van de procesbesturingsoftware gebruiken onze projectteams een in C++ en C# geschreven tool. Dit is een gedistribueerd object framework wat alle kernfuncties biedt voor een procesautomatisering. Verder zullen jouw werkzaamheden o.a. bestaan uit: Analyseren van vragen en wensen van gebruikers en deze vertalen naar een functioneel ontwerp; Ontwerpen, programmeren en testen van productaanpassingen; Implementeren van nieuwe productreleases in de projectteams; Continu toetsen van het effect van nieuwe releases op andere tools en processen; Inzichtelijk maken van voortgang omtrent softwarewerkzaamheden,

Bekijk vacature »

Infrastructure Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 12945 Introductie Our client is one of the most innovative companies within the Netherlands. Currently we are looking for an Infrastructure Platform Engineer. Within this role you will be developing the infrastructure. Functieomschrijving Within this role you are responsible in the development of our distributed data and compute platform infrastructure. You will design, develop and implement new features and fixes. Next to this you will integrate and configurate other packages that supports the development of tuning applications within the organisation. You will support customer sites remotely. Design and implement the

Bekijk vacature »

Node.js developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

C# .NET developer voor innovatieve applicaties gez

Bedrijfsomschrijving Deze werkgever houdt zich al ruim 20 jaar bezig met het ontwikkelen van innovatieve software en dat willen ze graag nog lang doorzetten. En dat merk je ook als je als .NET developer hier aan de slag gaat. De applicaties worden continu doorontwikkeld met altijd als uitgangspunt dat zowel de kwaliteit als het gebruikersgemak van hoog niveau is. Het bedrijf telt inmiddels ruim 25 medewerkers waarvan meer dan de helft op de development afdeling werken. Meer weten over deze werkgever? Mail naar [email protected] of bel 0657578548 Functieomschrijving Je komt te werken in een Scrum team met andere .NET developers

Bekijk vacature »

.NET Developer

Dit ga je doen Programmeren in .NET, Javascript & C# en ontwikkelen in Web Services, Windows Services en MS SQL Server; Zelfstandig verbanden maken Analyseren, testen, bugs fixen, reviewen en rapporteren; Juiste prioriteiten stellen en verantwoordelijkheid nemen; Op architectuur niveau meedenken; Af en toe klanten bezoeken. Hier ga je werken Voor onze relatie zijn wij opzoek naar een .NET ontwikkelaar met minimaal 3 jaar werkervaring. Je komt te werken in een groeiend bedrijf met betrokken collega's die zorgen voor een familiaire sfeer op de werkvloer. Als .NET ontwikkelaar word jij vanaf de eerste werkdag betrokken bij het gehele ontwikkelproces. De

Bekijk vacature »

Software Developer

Longship.io gaat de wereld veroveren met baanbrekende software en legendarische... pizza-avonden! Lees hier de vacature van Software Developer! Bij Longship werken we met een team van 5 mensen aan software voor laadpaal operators. Longship is ontstaan in 2020 met als doel om de elektrische mobiliteitstransitie aan te jagen. We zijn nu al een wereldwijde speler doordat we continu voorop lopen in innovatie. Ons platform helpt het versneld elektrificeren van wagenparken, internationaal! Wij zijn een startup met grote ambities die we willen bereiken met een relatief klein en efficiënt team. Je krijg de kans om ontzettend veel te leren van ervaren

Bekijk vacature »

C# .NET Developer

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Bennekom gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Bedrijfsprofiel De organisatie waar je voor gaat werken heeft een onafhankelijk dataplatform ontwikkelt voor de agrarische sector.

Bekijk vacature »

Back end developer Digital Agency

Functie Wij zijn van origine een wordpress bureau, maar sinds 2006 zijn wij dit wel redelijk ontgroeid. Naar mate de jaren verstreken zijn we gegroeid in omvang, maar ook in de complexiteit van opdrachten waarin wij onze klanten kunnen bedienen. Momenteel bestaat onze organisatie uit 4 front end developers, 12 back end developer 3 projectmanagers en een 2 koppig management. Wij zijn een hele informele, bijna familiaire organisatie. Geen strak pak of overhemd, nee gewoon dragen waar jij je prettig bij voelt. De gemiddelde leeftijd ligt tussen de 25 en 30 en wij doen er veel aan om onze hechte

Bekijk vacature »

Softwareontwikkelaar Cleopatra

Functieomschrijving: De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van bromen snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie.De opdracht bestaat uit: het programmeren van de diverse modules;het tijdens demo's tonen van de

Bekijk vacature »

Software Developer PHP JavaScript Python HBO SQL

Samengevat: Wij zijn een softwarebedrijf voor Autodealers. Ben jij een Medior of Senior Software Developer? Heb je ervaring met PHP, JavaScript of Python? Vaste baan: Java.Developer Software HBO €3.000 - €5.200 Bij ons op de werkvloer is er een positieve en informele sfeer. Naast een goede begeleiding en een enthousiaste klantenkring biedt deze werkgever een prettige omgeving met zeer afwisselende werkzaamheden. Houd jij van aanpakken en denk je dat je deze uitdaging aankunt? Dan zoeken wij jou! Zij werken voor grote klanten. Zij doen omvangrijke projecten die we bij deze werkgever op kantoor realiseren (geen detachering). Zij werken met state-of-the-art

Bekijk vacature »

Trainee pega developer

Wil jij een mooie stap maken in jouw carrière? Mooi! Bij De Mandemakers Groep haal je binnen 6 maanden je CSA- en CSSA-certificaten, waarna jij aan de slag kan als Pega-developer in ons IT-team. Achter de schermen zorg jij ervoor dat collega’s efficiënt werken en klanten iedere dag beter geholpen worden. Wil jij daaraan bijdragen? En jouw ICT-skills ontwikkelen? Lees dan snel verder en solliciteer vandaag nog als trainee Pega-developer. Wat ga je doen? Als trainee Pega developer leiden wij je op tot gecertificeerd software developer voor het low-code platform PegaSystems. In de training ben je verantwoordelijk voor een te

Bekijk vacature »

Full Stack Developer

Dit ga je doen Ontwikkelen van Product Informatie Management (PIM) systemen; Werken aan zowel grotere als kleine projecten voor toonaangevende klanten binnen o.a. de retail; Verantwoordelijk voor de front-end werkzaamheden; Naast de front-end werk je ook aan de backend. Hier ga je werken Als Full Stack Developer komt je te werken binnen een vooruitstrevende organisatie die Product Informatie Management (PIM) systemen levert aan hun klanten. Hun klanten zijn toonaangevende bedrijven binnen o.a. de retail. De organisatie zit gevestigd in regio Zwolle en bestaat uit zo'n 35 medewerkers, waarvan 30 IT. Je komt te werken binnen één van de zelfsturende development

Bekijk vacature »

Senior Java Ontwikkelaar

Dit ga je doen Werken aan uiteenlopende interne projecten voor grote (internationale) organisaties; Ontwikkelen van diverse (web)applicaties en platformen met technieken als Java, Azure en ASP.NET; Complexe vraagstukken tackelen met jouw expertise en ervaring; Waar nodig help jij je collega's om samen tot de juiste oplossing te komen. Hier ga je werken Als Java Developer kom je te werken bij een internationale organisatie in regio Amsterdam die zich richt op procesoptimalisatie door middel van zeer complexe IT oplossingen. Dit doen zij op het allerhoogste niveau met vestigingen over heel de wereld en met een groot aantal aansprekende, maatschappelijk betrokken klanten.

Bekijk vacature »

Ervaren PHP Software Developer

Functieomschrijving Voor een toffe opdrachtgever in regio Breda zijn wij op zoek naar een medior PHP Developer met affiniteit met Laravel. Je komt te werken bij een uitdagende opdrachtgever met supergave klanten in een specifieke branche. Als PHP ontwikkelaar ben je samen met een vooruitstrevende team van 6 collega’s verantwoordelijk voor de ontwikkeling, beheer en het vernieuwen van informatiesystemen voor een specifieke branche. Je ondersteunt complexe uitdagingen van klanten. Vervolgens breng je hun wensen in kaart en vertaalt deze door naar maatwerk software. Affiniteit met Laravel is een pré. Om de klanten zo goed mogelijk te ondersteunen en snel in

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »
Sven b

Sven b

04/06/2011 10:23:08
Quote Anchor link
Hallo,

Ik heb een vraag met betrekking tot het omgaan met errors. De code hieronder zet ik altijd in mijn script om te zien welke errors ik krijg. Ik krijg bij mijn formulier vaker een undefined error, omdat de $naam nog niet door $_POST['naam'] gedefinieerd is geworden. Ondanks deze error werkt mijn script perfect. Zonder de error_reporting zou ik deze erorr niet te zien krijgen. Hoe belangrijk is het om deze error toch op te lossen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
error_reporting(E_ALL);
ini_set('display_errors', 'true');
echo mysql_error();
 
PHP hulp

PHP hulp

27/05/2026 11:55:30
 
Wouter J

Wouter J

04/06/2011 10:33:57
Quote Anchor link
Zonder error reporting krijg je nooit een error te zien...
Het is dus altijd belangrijk om alle errors en notice op te lossen. Hoe beter je script hoe sneller en hoe makkelijker te gebruiken.

Bij een formulier -zo als jij zegt- is het verstandig om te kijken of het verzonden is. Dat kan met
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
# Formulier is verzonden
}
?>

En als je wilt weten of een variabele al geset is kan je isSet gebruiken.

Daarnaast is het zomaar echoën van mysql_error() niet verstandig, maar ik denk dat je dit alleen maar zo hebt gedaan als voorbeeldje.

Lees ook eens dit voor goede error handling.
 
Sven b

Sven b

04/06/2011 10:45:00
Quote Anchor link
Bedankt voor de snelle reactie. Je weet me wel wat leesvoer te geven :P

Ik heb de error opgelost, maar ik vroeg me gewoon af of het veel uitmaakte als het het de werking van het script niet beinvloedde. Ik heb in dit geval voor de isset functie gekozen om dit probleem op te lossen. Toch kan het best omslachtig zijn om dergelijke undefined errors weg te werken. Elke $naam moet gedefinieerd zijn en dat kan niet altijd in een script zo zijn. Ik heb mijn script toegevoegd om te laten zien wat ik bedoel. MIsschien ook handig script voor andere lezers. Deze namen script zet peter-paul of PeTeR-PAuL of o'conner om in Peter-Paul en O'Conner.

Wouter je zegt trouwens dat je en request method kunt gebruiken. Ik heb begrepen dat je site daarmee hack gevoeliger wordt. Is dat zo?
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
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'true');
echo mysql_error();
$name = (isset($_POST['voornaam'])) ? ucwords(strtolower($_POST['voornaam'])) : "";

  if(strpos($name, "'")) {    
    $pos = strpos($name, "'") + 1;
     echo '1';
    }

  if (strpos($name, "-")) {    
    $pos = strpos($name, "-") + 1;
    echo '2';
    }

  if (!preg_match('/[-\']/', $name)){
    $pos = $name; //als ik dit niet definieer krijg ik een error
    echo '3';
  }

  $name = substr_replace($name, strtoupper($name[$pos]), $pos, 1);
    echo "Fixed name is: {$name}<br />\n";
?>


Edit: Ik heb altijd de error_repport aan staan om te zien wat er fout gaat. Mijn site is dan ook nog niet online. In dit voorbeeld zie je ook echo 1, 2, 3 staan en dit was voor mijn eigen om te zien welk pad de code nam.

MOcht deze code omslachtig zijn of beter kunnen dan hoor ik het graag!
Gewijzigd op 04/06/2011 10:46:22 door Sven b
 
Wouter J

Wouter J

04/06/2011 11:32:22
Quote Anchor link
Die echo mysql_error is alleen nodig als je mysql gebruikt en alleen als er een fout is bij een mysql functie. Zodra je dit niet hebt moet je dit gewoon weglaten.

Een variabele moet altijd uit de quotes. Dus niet
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$naam
= 'Sven';
echo "Hallo $naam";
// Maar
echo 'Hallo '.$naam;
?>

(dit had ik al een keer gezegd...)

De manier in je if statement is verkeerd. str_pos geeft namelijk de STRing_POSitie terug. Dit kan 0 zijn, wat wordt aangezien als false en dit terwijl het true is. Gebruik dus === true.

I.p.v. !preg_match('/[-\']/', $name) kan je ook preg_match('/[^-\']/', $name) gebruiken, of dit beter is weet ik niet.

Wat jij in dit script doet kan volgens mij veel sneller met ucwords.
 
Sven b

Sven b

04/06/2011 11:47:14
Quote Anchor link
hehe,

bedankt voor je snelle reactie. Ik zal de aanpassingen maken. Het string_positie verhaal snap ik nog niet helemaal, maar ga ik nog mee stoeien.

Je geeft aan dat ucwords sneller gaat. Dat klopt wanneer ik gewoon een naam sven heb, maar als iemands naam o'conner of jean-paul is dan werkt ucwords niet meer, want met alleen ucwords krijg je dan.

O'conner en Jean-paul, terwijl het moet zijn... O'Conner en Jean-Paul. Dat is wat dit script doet of begreep je dit al en is er toch een snellere manier?
 
Wouter J

Wouter J

04/06/2011 17:15:11
Quote Anchor link
Ik zou het dan aanpakken dat je de string breek bij - of ', dit doe je bijv. met explode.
Vervolgens ga je met de array die je nu hebt elk woord met ucwords vergroten. Dan voeg je alles weer samen met een - of een '.

Ik heb het even getest en jou manier is sneller. Ik had gedacht dat het simpeler zou zijn met ucwords. Maar jou code heeft 0.000056982040405273 seconden nodig en die van mij 0.00010013580322266, het scheelt dus 5 tienduizendste seconde.
 
Sven b

Sven b

04/06/2011 20:23:47
Quote Anchor link
Aaah nice :P

hoe je dat dan met explode zou doen zou ik dan niet weten. Ik snap dat je een - of een ' kan herkennen en die dan omzet of een spatie er tussen knalt, maar dan moet je ook de spaties er weer alle spaties verwijderen. Wat als het nu o'conner van der janssen is?

Ik heb trouwens nog nagedacht over je tip:
Quote:
De manier in je if statement is verkeerd. str_pos geeft namelijk de STRing_POSitie terug. Dit kan 0 zijn, wat wordt aangezien als false en dit terwijl het true is. Gebruik dus === true.



De string positie kan geen 0 zijn of ken jij iemand die 'sven heet? Of een andere dergelijke naam. Ik denk dat er geen enkele naam in de wereld met een - of een ' begint. Toch vraag ik me af wat je precies bedoelde met al die === erin zetten, want ik zie niet waar ik die er in zou moeten zetten.

Ik krijg in mijn script een error:
3 Notice: Uninitialized string offset: 0 in


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
<?php      $name = (isset($_POST['voornaam'])) ? ucwords(strtolower($_POST['voornaam'])) : "";
      if(strpos($name, "'")) {    
        $pos = strpos($name, "'") + 1;
         echo '1';
        }

      if (strpos($name, '-')) {    
        $pos = strpos($name, '-') + 1;
        echo '2';
        }

      if (!preg_match('/[-\']/', $name)){
        $pos = $name;
        echo '3';
      }

                                
$name = substr_replace($name, strtoupper($name[$pos]), $pos, 1); //hier krijg ik de error
            echo "Fixed name is: {$name}";      
?>


Ik heb geprobeerd om dit stukje code alleen te laten werken wanneer er gesubmit is, maar dat werkt niet. De code werkt goed wanneer ik een naam submit. Dus mijn idee was om de hele code dit te zetten:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
if (isset($_POST['submit']) AND $_POST['naam'])){
   // gehele code
}


Echter bij deze code doet hij niet meer een echo afgeven. Ik snap alleen niet hoe dat kan, omdat dit wel logischerwijs zo zou moeten werken.

Btw. Wouter hoe test je de snelheid van je script? Dat is echt wel handig... Kan ik nog wat leuke testjes doen. Heb je het volgende getest?

I.p.v. !preg_match('/[-\']/', $name) kan je ook preg_match('/[^-\']/', $name) gebruiken, of dit beter is weet ik niet.


Groetjes Sven
Gewijzigd op 04/06/2011 20:25:21 door Sven b
 
Wouter J

Wouter J

04/06/2011 23:40:46
Quote Anchor link
Over de pos. Ik zou voor de zekerheid toch gewoon === true gebruiken, het is altijd veiliger en je weet nooit wat er ingevoerd wordt. Hoe dit werkt staat uitgelegd op php.net. Typ maar eens php.net/functieNaam en je krijgt een uitgebreide documentatie over die functie.

Een voorbeeld van hoe je een formulier goed verwerkt: http://snipplr.com/view/54888/verwerking-formulier/

De snelheid van een script test je door gebruik te maken van microtime:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$begin
= microtime(true);
// De code die getest moet worden
$verschil = (microtime(true)) - $begin;
?>


Met explode krijg je alle namen in een array, met een foreach loop kan je die dan bewerken.

@Hieronder, bedankt. Heb het aangepast.
Gewijzigd op 05/06/2011 09:05:32 door Wouter J
 
Maarten PHP

Maarten PHP

05/06/2011 08:15:57
Quote Anchor link
Wouter J op 04/06/2011 23:40:46:
Over de pos. Ik zou voor de zekerheid toch gewoon === true gebruiken, het is altijd veiliger en je weet nooit wat er ingevoerd wordt. Hoe dit werkt staat uitgelegd op php.net. Typ maar eens php.net/functieNaam en je krijgt een uitgebreide documentatie over die functie.

Een voorbeeld van hoe je een formulier goed verwerkt: http://snipplr.com/view/54888/verwerking-formulier/

De snelheid van een script test je door gebruik te maken van microtime:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$begin
= microtime(true);
// De code die getest moet worden
$verschil = (microtime(true) - $begin;
?>


Met explode krijg je alle namen in een array, met een foreach loop kan je die dan bewerken.


Je mist een haakje in je code.
 
Wouter J

Wouter J

05/06/2011 16:47:11
Quote Anchor link
Ik heb getest welke sneller is !preg_match('/[-\.]/') of preg_match('/[^-\.]/'). Na 1000 keer uitvoeren waren de resultaten heel ongelijkmatig. Na 10000 keer begon het al wat preciezer te worden en na 100000 keer krijg ik de hele tijd ong. dit:
!preg_match('/[-\.]/') 3.5565569400787E-5
preg_match('/[^-\.]/') 3.4309375286102E-5
Dit betekend dus dat preg_match('/[^-\.]/') sneller is.
 



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.