Php/javascript array probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mendix Consultant / Developer

Dit ga je doen Het in kaart brengen en analyseren van de functionele wensen van de klant rondom Mendix applicaties; Het fungeren als sparringpartner voor de (interne) klanten; Het opstellen van requirements en het vertalen hiervan naar technische mogelijkheden; Het opstellen van user stories; Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Het testen van op te leveren software en het zorg dragen voor de implementatie; Trainen van gebruikers in het gebruik van de applicatie; Werken in een Agile omgeving. Hier ga je werken De organisatie begeeft zich in de retail branche en focust zich

Bekijk vacature »

Senior PHP developer

Functie Als Senior PHP developer heb je een sterke mening over de architectuur van projecten en de processen binnen het team. Je bent de sparringpartner voor je Team Lead. Ook ondersteun je met jouw kennis de minder ervaren developers in jouw team. Ze werken regelmatig aan projecten vanaf scratch en dit geeft ruimte om voor nieuwe technieken te kiezen. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en

Bekijk vacature »

Full Stack Java ontwikkelaar

Functieomschrijving Voor de politie zijn wij op zoek naar een Full stack Java ontwikkelaar. Als ervaren full stack Java ontwikkelaar binnen de gewenste deadlines meewerken aan de totstandkoming van de gewenste werkzaamheden. Taken Upgraden van GeoServer, SOLR, Oracle Spatial database, Tomcat Migreren Oracle Spatial naar PostgreSQL/PostGIS Migreren SOLR naar ElasticSearch Geografische gegevens op het interne netwerk beschikbaar maken Doorontwikkelen en actualiseren van de geografische services Het up to date brengen van de CI/CD pipeline, samen met medewerkers die verantwoordelijk zijn voor de CI/CD tooling Aanspreekbaar op de solution architectuur en stemt die met collega's in het cluster Geo De opdracht

Bekijk vacature »

SQL database ontwikkelaar

Functie omschrijving Ben jij niet bang voor complexe algoritmes? Schikt het schrijven van procedures in T-SQL jouw niet af en heb jij al de nodige informatie in SQL, dan is functie precies wat voor jou! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat werken aan de complexere projecten waar jij van A tot Z bij betrokken bent. Je gaat zorg dragen voor het ontwerp, de ontwikkeling en het updaten van SQL databases. Dit doe je op basis van T-SQL. Jij bent van start tot finish betrokken bij de projecten die jij leidt. Je houdt contact met klanten en

Bekijk vacature »

Senior Front-end developer

Functie Als front-end developer ga je aan de slag voor verschillende klanten, waarbij veel rekening wordt gehouden met waar je woont (dit is altijd binnen het uur), en word er gezocht naar een organisatie die past bij jou. Zowel qua persoonlijke ambities als de technische aansluiting. De opdrachten duren gemiddeld 1 à 2 jaar maar dit hangt ook af van je wensen. Je werkt in een teamverband voor een klant en zult nauw samenwerken met zowel eigen collega’s als die bij de klant werkzaam zijn. Ze zijn op zoek naar een technische front-end developer die ruime ervaring heeft in één

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

PHP Web Developer

Functie omschrijving Voor een klein softwarebedrijf in de omgeving Roosendaal, zijn wij op zoek naar een PHP web developer met een aantal jaar werkervaring. Wil jij graag werken aan in-house software projecten voor diverse klanten? Voel jij je prettige in een klein team developers, waar jouw inbreng enorm gewaardeerd wordt? Lees dan snel verder! Jouw werkzaamheden zien er als volgt uit: Je wordt verantwoordelijk voor de ontwikkeling van diverse applicaties. Dit kan de ene keer een online platform voor aanbiedingen zijn, en de andere keer een software pakket dat gebruikt wordt om interne processen te automatiseren. Het zijn stuk voor

Bekijk vacature »

.NET developer

Functie As a .NET developer you start in a driven and diverse development team. Your team consists of 16 IT professionals, including 7 software engineers. Because your new employer is internationally active, there are also international IT professionals working in the IT department. As a result, the official language is English. As a team you are responsible for a new Cloud Native product. This product runs entirely in Azure with a Progress Database and various Azure Functions. In addition, this product has a JS front-end, a REST API system and a layer in C # .NET. The idea is therefore

Bekijk vacature »

Lead Fullstack developer

Functie omschrijving Ben jij een leergierige en ambitieuze junior developer met technische skills? Ben jij op zoek naar een werkgever die jouw de volledige vrijheid geeft om jezelf tot een volwaardige senior te ontwikkelen? Wij zijn op zoek naar een full stack developer die zich bezig wil bezig houden met het uitbreiden en verbeteren van de online webshop. Een onderdeel van jouw werkzaamheden is naast het beheren van de webshop ook om de processen en structuren te stroomlijnen. Werkzaamheden Onderhouden van de webshop (denk aan het bijhouden van de voorraad); Nieuwe functies toevoegen aan de product configurator door middel van

Bekijk vacature »

Full Stack .NET Developer C# ASP.NET

Samengevat: Deze werkgever is gespecialiseerd in het op afstand bewaken en besturen van machines en processen. Ben jij een ervaren Full Stack .NET Developer? Heb je ervaring met C# en ASP.NET? Vaste baan: .Net Developer C# ASP.NET HBO €3.300 - €4.500 Deze werkgever is een snel groeiende onderneming gespecialiseerd in het op afstand bewaken en besturen van machines en processen, IoT (Internet of Things). Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Wil jij bij de top specialisten horen? Ben jij op zoek naar een

Bekijk vacature »

C# .NET Developer

Functie omschrijving Wij zijn op zoek naar een C# .NET Developer voor een leuke opdrachtgever in de omgeving van Hilversum! Voor een leuk bedrijf in de omgeving van Hilversum zijn wij op zoek naar een Back-end developer die klaar is voor een nieuwe uitdaging. Ben jij iemand die graag aan verschillende projecten werkt en het ook leuk vindt om bij klanten op bezoek te gaan? Dan ben jij de perfecte kandidaat! Deze functie is erg divers, je moet dus goed kunnen schakelen. Je komt te werken in een klein team van developers. Binnen het bedrijf hangt er een gemoedelijke informele

Bekijk vacature »

.Net developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als .Net Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Als developer bouw je in DevOps teams aan enterprise applicaties, nieuwe IOT, Chatbots of AI oplossingen. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Natuurlijk krijg jij de mogelijkheid je te certificeren in dit vakgebied. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling. Mede hierdoor zij wij vorig jaar Microsoft Partner of the year geworden.

Bekijk vacature »

PHP Developer

Dit ga je doen Ontwikkelen, implementeren en testen van PHP-oplossingen en Apps voor klanten en bedrijfsprocessen; Opstellen van requirements en uitwerken van de oplossingen; Testen van software en borgen van een soepele overdracht, inclusief documentatie; Proactief adviseren vanuit eigen expertisegebied over ontwikkelingen en verbeterpunten in technische toepassingen en processen binnen de organisatie. Hier ga je werken De organisatie is een ambitieuze en vooruitstrevende speler in de markt in de regio Rotterdam. Ze zijn de snelst groeiende in hun branche. Met een excellent aanbod en service willen zij de beste keuze zijn voor hun bestaande en nieuwe klanten. Dit alles doen

Bekijk vacature »

Frontend Developer - Leeuwarden

Frontend Developer – Leeuwarden Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider

Bekijk vacature »

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »
Anthony dobbelaere

Anthony dobbelaere

14/05/2020 14:49:05
Quote Anchor link
Beste leden,

Ik ben een oefening aan het maken waarin ik een columnchart wil maken met data (tijd/temperatuur) die ik met php verkregen heb. Het is tot nu toe al gelukt om alle tijdstippen en temperaturen in een tabel te stoppen en gelijk ook in een array.

De code hiervan:

echo "<table>";
for($i=0;$i<40;$i++)
{
echo "<tr>
<td id=\"datatime[$i]\">{$data->list[$i]->dt_txt}</td>
<td id=\"datatemp[$i]\">{$data->list[$i]->main->temp}</td>
</tr>";
}

Nu zit elke temperatuur/datum in eenzelfde array met elke keer een index ++. Het volgende wat ik hiermee wil doen is in javascript met diezelfde data een chart tonen.

code:

google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart()
{
for (i=0; i<40;i++)
{

var time =[document.getElementById("datatime["+i+"]").textContent];
console.log(time);
var temp =[document.getElementById("datatemp["+i+"]").textContent];
console.log(temp);
var data = google.visualization.arrayToDataTable([
['datum', 'temperatuur'],
[time, parseFloat(temp)]
]);
console.log(time)
var options = {'title':'temperatuur per tijdstip', 'width':2000, 'height':700};

var chart = new google.visualization.ColumnChart(document.getElementById('barchart'));
chart.draw(data, options);
}
}

Het probleem dat ik heb is dat ik enkel de eerste datum/temperatuur verkrijg. In console krijg ik alle datums/temperaturen maar die zitten allemaal in index[0] van time/temp. Iemand die mij kan helpen zodat ik alle datums/temperaturen in mijn chart kan verkrijgen?
 
PHP hulp

PHP hulp

18/05/2024 10:53:24
 
Rob Doemaarwat

Rob Doemaarwat

14/05/2020 16:45:00
Quote Anchor link
Moet je niet eerst die times en temps in een array verzamelen, en pas dan de google.visualization.arrayToDataTable() truc doen?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
function drawChart(){
  var time = [],temp = []; //arrays aanmaken
  for (i=0; i<40;i++){ //arrays vullen
    time.push(document.getElementById("datatime["+i+"]").textContent);
    temp.push(document.getElementById("datatemp["+i+"]").textContent);
  }
  //arrays gebruiken
 
Anthony dobbelaere

Anthony dobbelaere

14/05/2020 17:49:04
Quote Anchor link
Beste Rob, alvast bedankt voor de hulp. Op jou manier slaag ik er inderdaad in om ze eerst in een array te krijgen. Nu met onderstaande code krijg ik enkel de laatste index waarde. hoe krijg ik elke index waarde in mijn chart?

google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart()
{
var time =[], temp=[];
for (i=0;i<40;i++)
{
time.push(document.getElementById("datatime["+i+"]").textContent);
temp.push(document.getElementById("datatemp["+i+"]").textContent)
}

console.log(time);
console.log(temp);

for (i=0; i<40;i++)
{
var data = google.visualization.arrayToDataTable([
['datum', 'temperatuur'],
[time, parseFloat(temp)]
]);
var options = {'title':'temperatuur per tijdstip', 'width':2000, 'height':700};

var chart = new google.visualization.ColumnChart(document.getElementById('barchart'));
chart.draw(data, options);
}
}
 
Thomas van den Heuvel

Thomas van den Heuvel

14/05/2020 17:59:21
Quote Anchor link
@Anthony heb je gecontroleerd hoe (in welke structurering/sortering) je de data dient aan te leveren aan de chart? Mogelijk is dat dus in een andere vorm dan de vorm waarin jij dat doet, aangezien je niet het gewenste resultaat krijgt.

Waarom staat het bovenstaande nogmaals in een for-loop? "time" en "temp" zijn beide arrays, hier een parseFloat op loslaten levert waarschijnlijk niet het gewenste resultaat op...
 
Anthony dobbelaere

Anthony dobbelaere

14/05/2020 18:47:40
Quote Anchor link
@thomas ik heb het niet echt gecontroleerd. ik had al eens een chart gemaakt met deze code maar dat waren vaste waarden zonder arrays. Het bovenste staat in een for loop om de 40 waarden van time/temp in de arrays te steken. Parsefloat had ik toegepast omdat de browser geen strings toeliet op de x-axys van de chart.

Toevoeging op 14/05/2020 19:18:32:

Onderstaande code is eigelijk wat ik wil bereiken. Maar dan met een for lus. Zodat ik niet 40x die regel code moet gebruiken.

var data = google.visualization.arrayToDataTable([
['datum', 'temperatuur'],
[time[0], parseFloat(temp[0])],
[time[1], parseFloat(temp[1])],
[time[2], parseFloat(temp[2])],
[time[3], parseFloat(temp[3])],
[time[4], parseFloat(temp[4])],
[time[5], parseFloat(temp[5])] ...[40]
]);
 
Thomas van den Heuvel

Thomas van den Heuvel

14/05/2020 22:37:02
Quote Anchor link
Hm, het lijkt mij handiger om dit rechtstreeks vanuit PHP te doen?

Het is niet echt logisch om dit eerst in HTML te gieten en het hier vervolgens weer uit te pulken.

Dus zoiets?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$chartData
= array(array('datum', 'temperatuur'));

for ($i=0; $i < 40; $i++) {
    $chartData[] = array(
        $data->list[$i]->dt_txt,
        $data->list[$i]->main->temp,
    );
}

?>


NB deze chart data zou je dus ook kunnen gebruiken voor het uitdraaien van de HTML-tabel.

En in het JavaScript gedeelte doe je zoiets:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
var data = google.visualization.arrayToDataTable(<?php echo json_encode($chartData); ?>);


Dit maakt de broncode tevens een stuk overzichtelijker/beter leesbaar.
Gewijzigd op 14/05/2020 23:03:28 door Thomas van den Heuvel
 



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.