valideren csv input

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Java developer

Het schrijven van software en applicaties die er echt toe doen, dit doe jij onder andere als Java developer. Wij zoeken een Java developer voor ons hoofdkantoor in Waalwijk voor 40 uur per week. Het schrijven van software en applicaties die er echt toe doen, dit doe jij onder andere als Java developer. DMG, een huis vol mogelijkheden. Als Java developer werk je aan business applicaties, API’s en webservices die zowel binnen het bedrijf als door klanten en/of zakelijke partners worden gebruikt. Op deze manier kunnen we onze klanten nog beter bedienen en kunnen medewerkers hun werk eenvoudiger uitvoeren. Het

Bekijk vacature »

Business Developer Credit Risk

Senior Business Developer Team Delivery Incasso2020 programma Het succesvol Live brengen van een eerste MVP in Q1 2022 met het Agile/Scrum team: jij bent in de driver seat, de PO ondersteunt waar nodig Requirements en acceptatie criteria voor volgende incrementen opstellen zodat ook de backlog items na Go-Live helder zijn voor het Agile/Scrum team Overdracht van opgedane kennis en werkzaamheden naar een vaste kracht Functie-eisen Een afgeronde HBO/WO opleiding Ervaring binnen de bancaire sector Heeft ervaring met E2E IT implementatie in een Agile Way of Working Is in staat om zich snel in een nieuw onderwerp te verdiepen en/of heeft

Bekijk vacature »

AWS Cloud Developer bij PostNL

AWS Cloud Developer Den Haag HBO/WO IT Professional PostNL wil 'digital at the core' zijn en daarom staan we aan de voorgrond van de transformatie naar een Logistiek Tech bedrijf waarin data, technologie en een engineering cultuur een sleutelrol spelen. Als AWS Cloud Developer maak jij impact op deze transformatie door mee te werken aan een veilige, state of the art cloud (native) omgeving in AWS. Wat ga je doen? De groeiende pakkettenstroom bij PostNL leidt tot een steeds complexere operatie. Dat vereist een intelligente aansturing. Daarom werken we binnen de business unit “Digitale Ketensturing” aan het digitaliseren van onze

Bekijk vacature »

Junior Fullstack .NET Developer @ Regio Eindhoven

2021-10-19 iSense Junior Fullstack .NET Developer Heb je onlangs een hbo-, wo-opleiding of een minor richting de IT afgerond OF heb jij middels cursussen je sporen verdiend in het programmeren en wil je graag aan de slag als Fullstack .NET Developer? Lees dan snel verder! Want in januari/februari 2022 start de Experis Academy weer met een leerprogramma waarin IT-experts je opleiden tot developer met als specialisatie .NET. Dit allemaal met een salaris en een vooruitzicht op een baan bij een topwerkgever. ISLE51108 Locatie Eindhoven en omstreken. Wat ga je doen tijdens het Fullstack .NET Developer ontwikkeltraject? Vanaf januari/februari 2022 krijg

Bekijk vacature »

API Developer / Red Hat Fuse @ Amersfoort

2021-05-25 iSense API Developer Red Hat Fuse Heb jij als API Developer/Integratie specialist al enige ervaring met het ontwikkelen van API's en wil jij aan de slag met nieuwe oplossingen als Red Hat Fuse en 3Scale? Lijkt het jou gaaf om aan de vooravond te staan van de implementatie van een volledig nieuw applicatiehuis met tal van koppelingen? Ga jij daarnaast graag aan de slag binnen een uitdagende omgeving waarbij je de mogelijkheid krijgt jezelf verder te ontwikkelen? Lees dan snel verder! ISKO47622 Organisatie Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met

Bekijk vacature »

PHP Developer

Als PHP Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn. Wat doe je als PHP Developer bij Coolblue? Als PHP Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Hoewel je een PHP Developer bent, sta je open om C# of Javascript in te zetten of te leren. Ook PHP Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen PHP code schrijven. Samenwerken met de klantreiziger om onze klanten nóg

Bekijk vacature »

MasterData Administrator

“Do you dare to unlock your full potential?” MasterData Administrator 24 uur per week, locatie Burg Groep B.V. te Heerhugowaard Wij zijn Burg Groep B.V.; een familiebedrijf in Heerhugowaard. Wij produceren en verkopen natuurazijn voor voedings- en schoonmaak toepassingen en siroop. Onze productielocaties zitten naast Nederland ook in België, Frankrijk, Duitsland en Tsjechië. Binnen Burg Group wordt veel waarde gehecht aan eigen verantwoordelijkheid, ontwikkeling, pro-activiteit, innovatie en duurzaamheid om zo het beste uit jezelf te halen en je talenten volledig te benutten. Het gebruiken en delen van de juiste informatie en data is belangrijk, immers wanneer je informatie en data

Bekijk vacature »

Projectcoördinator Systeembeheer

Projectcoördinator Systeembeheer&Operations (40 u) Bij Bakker&Spees ontwikkelen we slimme IT-oplossingen voor onze klanten, waaronder veel grote spelers in de infrasector. Wij zitten vol plannen en ideeën voor de toekomst. We groeien flink en daarom zoeken we een nieuwe collega die de systeembeheertaken gaat coördineren en de brug vormt tussen Systeembeheer en de gebruikers. Dacht je dat systeembeheer bij een bedrijf van 40 mensen niet uitdagend genoeg was? Maak dan eens kennis met ons 'sysadmin' team. De collega’s houden zich bezig met beheer en bouwen daarnaast zelf aan projecten. Hun taken lopen uiteen van werkplekbeheer, kantoorinfrastructuur en softwareonderhoud tot netwerk-, server-

Bekijk vacature »

Medior PHP Developer gezocht voor een snel groeien

Bedrijfsomschrijving De Organisatie waar jij komt te werken is constant bezig met het vernieuwen en ontwikkelen van innovatieve webapplicaties. Met +/- 5 mede Developers ben jij verantwoordelijk voor het onderhouden en doorontwikkelen van deze applicaties. Verder heeft deze organisatie een groot maatschappelijk belang en heb je als Developer veel ruimte voor eigen inbreng. Wekelijks groeit het aantal klanten en daarom ben ik ter versterking van het Development team op zoek naar een Medior en/of Senior Developer. Functieomschrijving Als PHP Developer ben je verantwoordelijk voor zowel de backend als de frontend. Je werkt met 4 collega's aan de doorontwikkeling van 3

Bekijk vacature »

Backend .NET Developer @ regio Den Haag

2021-11-04 iSense Backend .NET Developer Ben jij een backend .NET Developer en heb je een passie voor voetbal? Beschik je daarbij ook over ervaring met .NET Core? Neem dan snel contact op voor meer informatie! ISSL47657-2 Nieuw Organisatie Binnen deze organisatie in de regio Den Haag zal je als .NET Developer terecht komen in een multidisciplinair team met 5 andere Programmeurs. In jouw rol ben je verantwoordelijk voor het ontwikkelen en optimaliseren van mobiele applicaties met meer dan 4 miljoen gebruikers wereldwijd. Als Backend Developer zal je dagelijks werken met C#, .NET Core, Kubernetes en een SQL Database. Voor het

Bekijk vacature »

Masterclass Low-Code Developer

Masterclass Low-Code Developer - Start 1 maart 2022 Categorie: Software Development/ Engineering Regio/Locatie: Rotterdam / Randstad, Netherlands Vacaturenummer: J1021-2299 Type dienstverband: Full Time Functiebeschrijving: De afgelopen jaren vraagt de business steeds meer om snelheid bij het oplossen van business vraagstukken en dit adequaat op te lossen met onderliggende IT. Men wil met een concrete oplossing snel in kunnen spelen op een veranderde markt. IT wordt nog vaak gezien als een vertragende component om te komen tot een oplossing. Het toepassen van Mendix Low-Code versnelt het proces voor applicatieontwikkeling substantieel. Daarnaast biedt Low-Code integratie met bestaande IT-systemen en platforms en maakt

Bekijk vacature »

.NET developer / Azure @ Enschede

2021-11-17 iSense .NET developer / Azure Ben jij een .NET developer met enkele jaren ervaring en wil jij deze ervaring graag inzetten bij een gerenommeerde organisatie die alleen maar de meest innovatieve projecten oppakt? Heb jij interesse in IoT, AI en complexe datastromen en wil jij jezelf hier verder in ontwikkelen? Lees dan nu verder! ISHU48014 Organisatie Als .NET developer ga je samen met zes collega's werken in aan state-of-the-art oplossingen voor diverse opdrachtgevers en werk jij hard om de kwaliteit te blijven waarborgen van het geleverde werk. Denk hierbij aan het van scratch af aan bouwen van oplossingen, platformen,

Bekijk vacature »

GE Smallworld Ontwikkelaar - Utilities

Wij zoeken een Geo-ICT Smallworld ontwikkelaar met interesse in de nieuwste ontwikkelingen in de Energiemarkt! Wat ga je doen? Wist je dat CGI het grootste bedrijf is met een eigen Geo-ICT community? Dat we ook in verschillende landen waaronder Nederland de koploper zijn op het gebied van Geo-ICT dienstverlening? We breiden onze Geo-ICT activiteiten nog steeds verder uit. Zo zijn wij ons vooral aan het richten op de nieuwste ontwikkelingen in de energiemarkt en de daarbij horende energietransitie. Het CO2 neutraal maken van de samenleving is onze doelstelling en jij kan daar een actieve bijdrage aan leveren! Onze Geo-ICT practise

Bekijk vacature »

Algorithms Developer (Java)

We are looking for a new colleague who brings solid mathematical and industrial (Java based) software engineering expertise with a strong drive to deliver results and a fundamental interest in continuously building a stronger and better performing team by challenging and coaching. Could this be your next job? Functie In the Applications Algorithms group we are responsible for the development and implementation of the common algorithms that are then used by other teams to develop applications to optimize the production process of our customers. We are a group of experts on mathematics, algorithms, numerical methods and software engineering. Collaborate with

Bekijk vacature »

Python Developer/Teamlead

De vacature We zijn op zoek naar een Python/Django developer die ons Scrum team komt versterken. Je wordt enthousiast van leesbare en goed geteste code, heldere datamodellen, mooie REST en GraphQL API's, pijnloze deploys en een perfecte aansluiting op onze interactieve React frontend. Je werkt mee aan de Python backend van ons mooie Jouw Omgeving platform, in een hecht team dat veel impact maakt. Binnen dit team laat je je technische expertise en leiderschapskwaliteiten zien: je zet de technische koers uit en neemt je collega’s hierin mee. Termen als “lead by example”, “meewerkend voorman” en “meritocracy” spreken je aan. Bij

Bekijk vacature »
Hans Vereyken

Hans Vereyken

02/06/2010 00:21:40
Quote Anchor link
Beste,

Ik ben reeds enige tijd aan het googlen om een goede oplossing te vinden voor het volgende:

Ik ben bezig met een website voor iemand die regelmatig grote hoeveelheden gegevens in een mysql database moet vervangen. Het programma dat hij op zijn computer gebruikt (Microsoft Access) heeft niet meteen de functies aan boord om deze taken uit te voeren. Ik laat hem de tabellen exporteren als csv waardes die hij dan in de website kan laden (er moeten hier en daar veranderingen gebeuren in de gegevens en een aantal zaken toevoegen, niet 'gewoon' synchroniseren, want dat gaat gewoon met access natuurlijk).
Gisteren gebeurde het dat Access een foutje maakte bij het aanmaken van het csv-bestand (Ja, het kan... ), hij probeert dit foutieve bestand in te laden... eerst wordt de database leeggemaakt, dan de nieuwe waardes erin, maar dat laatste ging dus niet goed, gevolg: website helemaal plat.
Mijn punt: hoe kan ik nakijken of er foutjes in de csv zitten alvorens deze te verwerken zodat dit niet meer kan gebeuren. Ik heb al gedacht om de gegevens eerst in een andere database te laden, wanneer dit faalt niet verder te gaan met het verwerken en zo de site intact laten, maar dit lijkt mij nogal omslachtig, ik zou liever een goede methode hebben om de csv te valideren.
Ik heb gezocht naar een Regular Expressions hiervoor maar ben nergens geraakt.
Eigenschappen van de csv: scheidingsteken: ","
Sommige waardes worden encapsulated met: "
Er moeten 3 waardes zijn gescheiden door komma's, dan moet er een /n komen

Iemand die mij een hint kan geven?

Dank bij voorbaat.
 
PHP hulp

PHP hulp

29/11/2021 16:42:00
 
B a s
Beheerder

B a s

02/06/2010 01:59:49
Quote Anchor link
Wil je het perse met PHP doen (geautomatiseerd) of kan dit ook client side?
 
Terence Hersbach

Terence Hersbach

02/06/2010 09:23:21
Quote Anchor link
hoe importeer je? PHP heeft namelijk hier functies voor die ook checken op fouten:
http://nl3.php.net/fgetcsv
 
Jan geen

Jan geen

02/06/2010 09:36:54
Quote Anchor link
Als je het importeert met de functie die hierboven wordt beschreven, dan kan je daarna eerst de array doorlopen en je checks doen en mits je geen fouten vindt dan pas de db updaten.
 
Hans Vereyken

Hans Vereyken

04/06/2010 08:35:09
Quote Anchor link
De input komt van een html formulier.
Dit is wat ik heb ondertussen, wel nog wat onhandig maar het komt wel goed zo denk ik
Edit:
script verwijderd, nieuwe versie in volgende post
Gewijzigd op 05/06/2010 13:50:05 door Hans Vereyken
 
Hans Vereyken

Hans Vereyken

04/06/2010 12:59:05
Quote Anchor link
Deze ziet er beter uit en werkt, heb hem ook ineens in het Engels gemaakt, toch steeds breder inzetbaar dan.
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
<?php
function validCsv ($csv, $regexps) {
    $data = nl2br ($csv); //nl2br
    $numberOfLines = substr_count($data, "<br />"); //Count occurances of <br />
    $result[0] = true;
    $result[1] = $numberOfLines;
    $result[2] = "";
    
    $lineNumber = 0;
    while ($lineNumber < $numberOfLines) {
        $lineNumber++;
        list ($lineString, $data) = explode ("<br />", $data, 2); //First line in $lineString, rest in $data
        $lineArray = str_getcsv ($lineString, ","); // split values of $lineString in array in $lineArray
        if (!$lineArray) {
            $result[0] = false;
            $result[2] .= "Error in <strong>line ".$lineNumber."</strong>: can not split the string (".$lineString.")<br />";
        }

        
        $offset = 0;
        while (isset ($regexps[$offset])) { // as long as there are regular expressions set hold them against the next field, if field count doesn't match --> false
            $field = preg_match ($regexps[$offset], $lineArray[$offset]);
            $offset++;
            if (!$field | $field == "0") { //if regular expression didn't match or preg_match fails/dies
                $result[0] = false;
                $result[2] .= "Error in <strong>line ".$lineNumber.", field ".$offset."</strong>: no match with regular expression (".$lineArray[$offset-1].")<br />";
            }
        }

        if (isset ($lineArray[$offset])) { //If there are more line's than regular expressions
            $result[0] = false;
            $result[2] .= "Error in <strong>line ".$lineNumber."</strong>: to many fields (".$lineString.")<br />";
        }
    }

    return $result;
}

if (isset ($_POST['submit'])) {
    $hoofdgroepen = $_POST ['hoofdgroepen'];
    $regexps[0] = "/^[1-9]{1}[0-9]{0,3}$/";
    $regexps[1] = "/^[a-zA-Z0-9.,()\/ ]{1,50}$/";
    $regexps[2] = "/^[1-9]{1}[0-9]{0,3}$/";
    $result = validCsv ($hoofdgroepen, $regexps);
    echo "True/False: ".$result[0]."<br />";
    echo "Number of lines: ".$result[1]."<br />";
    echo "Errors: <br />".$result[2]."<br />";
}

?>
 
Hans Vereyken

Hans Vereyken

15/06/2010 09:56:45
Quote Anchor link
Deze functie werkt perfect op mijn wamp server, als ik het naar mijn server upload en ik roep deze functie ergens aan blijft het gehele scherm gewoon wit... ik heb error_reporting (E_ALL) bovenaan het desbetreffende script gezet om er zeker van de zijn dat alle fouten weergegeven worden.
Ik heb geen idee wat er hier fout gaat, op mijn computer werkt het perfect...
Ik heb hier php 5.3.0, de server heeft php 5.2.6

Ik hoop dat iemand mij verder kan helpen
Alvast bedankt

Edit:
Ik heb het probleem gevonden, str_getcsv is een functie die pas bestaat sinds PHP 5 >= 5.3.0, hoe los ik dit op?
Gewijzigd op 15/06/2010 10:11:48 door Hans Vereyken
 

15/06/2010 10:33:02
 
Afra ca

Afra ca

15/06/2010 13:02:24
Quote Anchor link
Ik was las toevallig net de comments van fgetcsv, en aangezien we het hier toch hebben over valid CSV: php.net volgt niet de RFC standaard van CSV. Zie voor meer uitleg het bugreport
Gewijzigd op 15/06/2010 13:08:53 door Afra ca
 
Hans Vereyken

Hans Vereyken

15/06/2010 21:40:29
Quote Anchor link
@Karl Karl
Ik heb alle linkjes bekeken, ik maar zoeken, het stond gewoon onder mijn neus. De eerste link is de beste, maar veel te uitgebreid, ik heb er dit van gemaakt, dat is genoeg voor wat ik nodig heb:
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
<?php
if (!function_exists('str_getcsv')) {
    function
str_getcsv ($input) {
        $input = str_replace (array("\r", "\r\n", "\n"), "", $input);
        $input = $input.",";
        $offset = 0;
        while ($input != "") {
            if (substr ($input, 0, 1) == "\"") {
                list ($field, $input) = explode ("\",", substr ($input, 1), 2);
                $return[$offset] = $field;
            }
else {
                list ($field, $input) = explode (",", $input, 2);
                $return[$offset] = $field;
            }

            $offset++;
        }

        return $return;
    }
}

?>

Het is zeker geen volwaardig alternatief voor str_getcsv, maar zoals gezegd: voor mij is het voldoende.

@Afra ca
Ik denk niet dat dit probleem van toepassing was, maar zeker het lezen waard, danku!
Gewijzigd op 15/06/2010 21:43:13 door Hans Vereyken
 



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.