Excel/CSV bug

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

SAP HANA Cloud Application Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Veldhoven Vacature ID: 12662 Introductie HANA Cloud Application Developer at a High Tech company. The company is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. This role is situated in the Big Data Analytics (BDA) Domain. The teams have mixture of young talent and senior specialists and have a

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 Typescript 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 pure PHP code schrijven. Samenwerken met de klantreiziger om onze klanten

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 »

IT Manager team PaaS

TenneT is hard groeiende om haar ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Lead PaaS die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je wordt de Teammanager (Lead) van een nieuw team binnen de afdeling Basic van Information Technology and Facilities (ITF) van TenneT. Het team heet Platform as a Service. Hier wordt elke dag in een goede sfeer met zijn allen hard gewerkt om vanuit IT

Bekijk vacature »

Junior .NET Software Developer

Dit ga je doen Software development met behulp van C# .NET en / of PHP, je mag zelf kiezen waar jij je in wil specialiseren Meedenken over het nieuwe pakket, waar moet het aan voldoen? Unit-, integratie- en diverse andere tests schrijven en uitvoeren Nauw samenwerken met je IT collega's zoals Testers, Developers, DevOps Specialisten en Architecten Jezelf ontwikkelen met behulp van trainingen en cursussen Hier ga je werken Onze klant, een grote speler in de medische sector, is op zoek naar een enthousiaste junior (of meer ervaren) Software Developer die klaar is voor een nieuwe stap in zijn of

Bekijk vacature »

Senior Airport Developer ( System engineer)

De functie Nice to know (you) De nieuwe A-pier wordt de duurzaamste van Schiphol. Als deze af is ligt er 4000 vierkante meter zonnepanelen op het dak. En de toiletten? Die spoelen door met regenwater. we gaan ervoor: het creëren van de meest duurzame en hoogwaardige luchthavens ter wereld. een toekomstbestendig en duurzaam Schiphol. Daar werken we elke dag hard aan in team Development & Sustainability. Jij bent regisseur, expert én aanjager van de ontwikkeling van Schiphol. Connecting your world Hoe maak je de ambities en doelstellingen van Schiphol concreet in een project? De waarde voor Schiphol naar eisen die

Bekijk vacature »

Software developer

Functie Momenteel zijn ze op zoek naar een Software developer die, veelal fullstack, mee gaat werken aan de ontwikkeling van de producten en zo helpt aan de uitvoering van hun ontwikkelprojecten. Je komt te werken binnen hun development team bestaande uit 6 ontwikkelaars. Ze staan zowel open voor meer junior als medior/senior developers. Je kunt snel veel verantwoordelijkheid krijgen en doorgroeien binnen het bedrijf. Bovendien ben je betrokken bij het bepalen van de product roadmap en de inbreng van (nieuwe) technologieën. De applicaties waaraan je werk worden gebruikt op onderwijsinstellingen door heel Nederland. De tech-stack bestaat voornamelijk uit Laravel (PHP),

Bekijk vacature »

Productontwikkelaar Food

Wat ga je doen Als Productontwikkelaar Food ga je nieuwe producten ontwikkelen en bestaande producten verbeteren. Je bent hierbij betrokken bij het gehele proces: van productconcept naar proefreceptuur, het realiseren va het product (op kleine schaal) en het testen van producten in een productieomgeving. Verder: Bewaak je de status van verschillende fases van productontwikkeling en lever je tijdig de benodigde data aan Ben je bezig met de optimalisatie van oude en nieuwe recepturen Begeleid of organiseer je proefsessies (sensorisch onderzoek) in het team en/of bij klanten Onderhoud je contacten met de klanten, leveranciers van grondstoffen e.a. externe partijen Houd je

Bekijk vacature »

Network Engineer (f/m/d) in Heidelberg

Network Engineer (f/m/d) The IT Services team operates and supports the IT infrastructure and services at EMBL headquarters in Heidelberg and at the laboratory’s sites in Barcelona and Rome. As part of IT Services, the Network team is responsible for managing and developing the network infrastructure in our data centres, on campus, and to our external network providers. As a leading scientific institution with highly data-intensive research, extensive data flows at and between the laboratory’s six sites and to the Internet, EMBL is connected to national and international scientific networks using state-of-the-art technologies from vendors including Cisco, Extreme Networks and

Bekijk vacature »

PHP Developer (junior functie)

Functie omschrijving Ben jij een starter en wil je werken bij een jong en leuk bedrijf? Lees dan verder! Wij zijn op zoek naar een PHP Developer binnen een junior functie. Binnen dit bedrijf gaat het om persoonlijke aandacht en ontwikkeling! Je komt te werken voor een leuk communicatiebureau die alles op het gebied van online en offline communicatie doet. Dit doen zij voor verschillende branches, waardoor je aan diverse soorten projecten mag werken, dit maakt deze baan erg leuk! Daarbij werk je aan een door hun zelf ontwikkeld framework welke goed leesbaar is. Je maakt voor bedrijven op maat

Bekijk vacature »

Junior full stack developer

Functie Als full stack developer binnen onze organisatie ga jij je bezig houden met het bouwen van de user experience van de webapplicaties. Je bent verantwoordelijk voor het vertalen van concepten, briefings en designs naar werkende functionaliteit. Hierbij zorg je ervoor dat applicaties betrouwbaar, veilig en toekomstbestendig zijn en een goede architectuur hebben en behouden. Verder denk je actief na- en mee over nieuwe ontwikkelingen en functionaliteiten om zo elke dag de klantervaring weer te verbeteren. Dit doe je natuurlijk niet alleen maar in een development team. Het team bedraagt momenteel 4 man bestaande uit 2 devops engineers en 2

Bekijk vacature »

Front-end developer (Angular)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

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 »

Java Front-end Developer

Dit ga je doen Ontwikkelen van nieuwe functionaliteiten in Java met tools als Springboot, MS SQL Server (T-SQL) en JavaScript; Het onderhouden van de (web-)applicaties binnen een complexe omgeving; Werken aan de migratie van een monolithisch systeem naar een architectuur gebaseerd op Kubernetes; Code reviews met collega's en actieve kennisuitdelingsessies voeren; Het uitvoeren van unit- en systeemtests Experimenteren met nieuwe tools en technieken. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen

Bekijk vacature »

Python Developer

Dit ga je doen Als Python Developer ben je verantwoordelijk voor: Het ontwikkelen van Stuurprogramma's in Python zodat er verbindingen kunnen worden gelegd tussen besturingssystemen en (AV) hardware; Het testen en debuggen van Stuurprorgamma's; Het communiceren met noodzakelijke partijen in gevallen waar extra technische details nodig zijn om een Stuurprogramma te ontwikkelen of problemen op te lossen; Het maken van de nodige technische documentatie (in het Engels); Het participeren in een Scrum/Agile omgeving. Hier ga je werken Deze internationale organisatie is wereldwijd een succesvol producent en leverancier van professionele AV hard- en software. Klanten gebruiken de producten o.a. voor het

Bekijk vacature »
Bas Matthee

Bas Matthee

08/04/2008 16:11:00
Quote Anchor link
Je raadt het al, ik zeg hallo!

Ik ben vandaag op een probleemPJE gestuit met betrekking tot het genereren van CSV bestanden. Ik haal data uit twee tabellen en..... ach, allemaal onbelangrijk.

Het feit:

Als ik de eerste kolom van het csv bestand ID noem, geeft exel een error bij het inlezen. Verder werkt alles. Ook staat er gewoon netjes ID in de eerste kolom. Gebruik ik Id, id of iD, is er niks aan de hand. Kan het zijn dat ik een bug heb ondekt? Of wordt ID door exel gereserveerd als functie o.i.d.????
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
PHP hulp

PHP hulp

22/12/2024 21:43:48
 
Jesper Diovo

Jesper Diovo

08/04/2008 16:13:00
Quote Anchor link
Heb je het over het microsoft office programma excel of over een programma wat ik totaal niet ken?
 
Bas Matthee

Bas Matthee

08/04/2008 16:13:00
Quote Anchor link
Microsoft Office exel (logisch?)
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
Jacco Engel

Jacco Engel

08/04/2008 16:39:00
Quote Anchor link
Nee niet logisch want je kan het bijv ook over openoffice calc hebben
 
Bas Matthee

Bas Matthee

08/04/2008 16:41:00
Quote Anchor link
maar ik had het toch over exel in m'n eerste post, of heet openoffice calc ook exel?

Edit: (bron: Wikipedia) Calc is een digitaal rekenblad dat sterk lijkt op Excel en ongeveer dezelfde functies bezit.

EN HEET DUS GEEN EXEL! ;)
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
Jacco Engel

Jacco Engel

08/04/2008 16:43:00
Quote Anchor link
exel != excel
 
Jelmer -

Jelmer -

08/04/2008 16:43:00
Quote Anchor link
Nee, beiden heten niet exel. Microsoft heeft een product dat excel heet.

Bas:
... een error ...
Laat eens zien?
Gewijzigd op 01/01/1970 01:00:00 door Jelmer -
 
Bas Matthee

Bas Matthee

08/04/2008 16:45:00
Quote Anchor link
whoops exel != excel, je hebt gelijk. Taalfoutje.

Mij oprechte excuses (mag ook gezegd worden).

PS: Error komt eraan (wordt printscreen) (2 errors btw.)

EDIT!!!!! : http://congrez.difmedia.nl/errors.gif
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
Luc Zontrop

Luc Zontrop

08/04/2008 17:06:00
Quote Anchor link
Verder zoeken helpt echt hoor!
http://support.microsoft.com/kb/323626/nl
 
Jan Koehoorn

Jan Koehoorn

08/04/2008 17:27:00
Quote Anchor link
Als ik fputcsv gebruik voor een array en ik geef ; op als scheidingsteken, slikt Excel het wel als CSV:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
    while (fetch fetch fetch) {
        fputcsv ($fp, $row, ';');
    }

?>
 
Arend a

Arend a

08/04/2008 19:01:00
Quote Anchor link
http://support.microsoft.com/kb/215591
Quote:
WORKAROUND
To open your file in Microsoft Excel, first open the file in a text editor and insert an apostrophe at the beginning of the first line of text.
 
Bas Matthee

Bas Matthee

09/04/2008 08:50:00
Quote Anchor link
Jan Koehoorn schreef op 08.04.2008 17:27:
Als ik fputcsv gebruik voor een array en ik geef ; op als scheidingsteken, slikt Excel het wel als CSV:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
    while (fetch fetch fetch) {
        fputcsv ($fp, $row, ';');
    }

?>


Het is bij mij het geval dat ik van de ene tabel NAW gegevens moet halen, netjes met bijvoorbeeld voornaam, achternaam, etc... als velden. Maar van de andere tabel moet ik ook gegevens hebben, en die zijn niet op deze manier in de tabel te vinden. Ik heb namelijk een tabel met als kolommen: id, veldnaam, veldtype, opties etc... en in een andere tabel de gegevens die bij die velden horen, bijvoorbeeld: veld_id, waarde, etc... Dus deze gegevens moet ik combineren en vervolgens achter de rij met NAW gegevens in het csv bestand zetten. Dit is in mijn geval de beste oplossing om klanten dynamisch een formulier te laten samenstellen.

Veelt tekst en uitleg en misschien nieteens duidelijk. maar ik zal de voorlopige code even plaatsen. (haal dus data uit de deelnemers tabel en data uit de deelnemers_extra tabel).

ExportCSV.php
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?php
class ExportCSV {

    var
$FirstCollumn = 1;
    var
$FirstRow = 0;
    var
$CSVFile = NULL;
    var
$CollumnCount = 0;
    var
$RowPosition = 1;
    
    function
AddCollumns($CollumnName) {
        
        if ($this->FirstCollumn == 1) {
            // Dit is dus de eerste kolom, wanneer deze in hoofdletters is, gaf hij de fout.
            $this->CSVFile .= 'id';
            $this->CSVFile .= ';'.$CollumnName;
            $this->FirstCollumn++;
            $this->CollumnCount++;
        }
else {
            $this->CSVFile .= ';'.$CollumnName;
            $this->CollumnCount++;
        }
                
    }
    
    function
CloseCollumns() {
        
        
        $this->CSVFile .= "\r\n";
        $this->FirstCollumn = 1;
        
    }
    
    function
WriteRowExtra($Query) {
        
        $result_set = mysql_query($Query);
        
        $test = array();
        
        if (mysql_num_rows($result_set) > 1) {

            $aantal = 0;
            $start = 0;
            
            while ($result = mysql_fetch_object($result_set)) {
                
                if (array_key_exists($result->veld_id, $test)) {
                    $test[$result->veld_id] .= ' // '.$result->value;
                }
else {
                    $test[$result->veld_id] = $result->value;
                }
                
            }

            
            foreach ($test as $waarde) {
                    $this->AddData($waarde);
                }

        
            return true;
            
        }
elseif (mysql_num_rows($result_set) == 1) {

            $this->AddData($value);

        }
elseif (mysql_num_rows($result_set) == 0)     {

            return false;
    
        }
            
    }
    
    function
WriteRow($Query) {
        
        $result_set = mysql_query($Query);
        
        if (mysql_num_rows($result_set) == 1) {
            $result = mysql_fetch_array($result_set);
            foreach ($result as $key => $value) {
                if (!is_int($key)) {
                    $this->AddData($value);
                }
            }
        
        }
elseif (mysql_num_rows($result_set) == 0)     {
            return false;
        
        }
            
    }
    
    function
AddData($Data) {
        if ($this->RowPosition <= $this->CollumnCount) {
            if ($this->FirstRow == 0) {
                $this->CSVFile .= $Data;
                $this->FirstRow++;
                $this->RowPosition++;
            }
else {
                $this->CSVFile .= ';'.$Data;
                $this->RowPosition++;
            }
        }
else {
            $this->CSVFile .= ';'.$Data;
            $this->NewLine();
        }
    
    }
    
    function
NewLine() {
        
        $this->CSVFile .= "\r\n";
        $this->FirstRow = 0;
        $this->RowPosition = 1;
        
    }
    
    function
WriteFile($FileName) {
        
        
        
        $file = fopen($FileName,'w');
        fwrite($file,$this->CSVFile);
        fclose($file);
        chmod($FileName,0777);
        
    }


}

?>


gedeelte van deelnemers_export_csv.php
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
<?php
$File
= new ExportCSV;

$query = "SELECT label FROM formulier WHERE congres_id = ".$congres_id." ORDER BY positie ASC";
$label_set = mysql_query($query);
while ($label = mysql_fetch_object($label_set)) {
    $File->AddCollumns($label->label);
}


$File->CloseCollumns();

$query = 'SELECT naw_id FROM congres_deelnemers WHERE congres_id = ' . $congres_id;
$result_set = mysql_query($query);

if (mysql_num_rows($result_set) == 1) {

    $result = mysql_fetch_object($result_set);
    $File->WriteRow('SELECT * FROM deelnemers_naw WHERE id = '.$result->naw_id);
    $File->WriteRowExtra('SELECT value, veld_id FROM deelnemers_extra WHERE deelnemer_id = '.$result->naw_id .' ORDER BY veld_id ASC');
    
}
else {
    
    while ($result = mysql_fetch_object($result_set)) {
        $File->WriteRow('SELECT * FROM deelnemers_naw WHERE id = '.$result->naw_id);
        $File->WriteRowExtra('SELECT value, veld_id FROM deelnemers_extra WHERE deelnemer_id = '.$result->naw_id .' ORDER BY veld_id ASC');
    }

}


$File->WriteFile('custom/csv_export/'.$congres_id.'_'.$con_result->congresnaam.'.csv');
// Alle gegevens van $con_result worden al eerder uit de database gehaald (buiten deze code)
?>
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
Jan Koehoorn

Jan Koehoorn

09/04/2008 08:59:00
Quote Anchor link
Je gegevens komen uit meer dan 1 tabel, maar het moet toch mogelijk zijn om alle velden die je op 1 Excel rij wilt hebben in een array te krijgen? Zodra dat je lukt kun je namelijk met die fputcsv aan de gang en dan neemt die je al het werk uit handen.
 
Bas Matthee

Bas Matthee

09/04/2008 09:02:00
Quote Anchor link
Maar het volgende nadeel: Ik heb in de velden met de door deelnemers ingevulde data ook de gegevens van checkboxen staan, en wanneer er 2 waarden zijn aangevinkt, worden er dus 2 rijen weggeschreven met dezelfde veld_id. Als ik dus de data in een array ga zetten, dan krijgen die dezelfde key waarde en overschrijft de laatste de vorige.

Vooralsnog is de huidige code mijn enige werkende. En zal eerst mijn andere te verrichten taken aan dit project voltooïen. Alles af? dan is het tijd voor refacturing...
 



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.