Bug watchposition

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

SQL Database ontwikkelaar

Functie omschrijving Wil jij meewerken aan het creëren van slimme software om magazijnen als een geoliede machine te laten lopen? Wij zoeken een zorgvuldig persoon, iemand die niet snel de hand omdraait voor complexe algoritmes. Denk jij dat jij de SQL ontwikkelaar bent die wij zoeken? Lees snel verder en wie weet zitten we binnenkort samen aan tafel! Jouw werkzaamheden zullen er als volgt uitzien: Je houdt je bezig met het ontwerpen en ontwikkelen van MS SQL server databases, dit doe je met T-SQL als programmeer laag. Je gaat aan high-end software oplossingen werken, dit doe je voor de optimalisatie

Bekijk vacature »

Full-stack Developer

As a Full-stack developer at KUBUS, you will develop the (web)applications and services of BIMcollab. You will work on both the front- and back-end. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact in the market, but small enough that as an individual developer you can have an impact and really make a difference. Our development team consists of over 40 developers, testers, scrum masters and product owners, divided over

Bekijk vacature »

Low Code Developer

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Voor een leuke opdrachtgever in omgeving Capelle aan den IJssel zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten in heel het land! Wat ga je hier zoal doen? Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je

Bekijk vacature »

Full stack developer Python, React

Functie Jij als full stack developer komt binnen onze Technology afdeling te werken. Deze bestaat momenteel uit 15 man. De stack waarmee wij werken is voornamelijk Python, Javascript, React en GraphQL. Binnen deze afdeling wordt er met multidisciplinaire teams gewerkt aan verschillende projecten. Projecten duren vaak langer dan 3 maanden en je bent van begin tot eind vaak betrokken. Naast dat je als full stack ontwikkelaar aan de slag gaat ben je ook Consultant. Dit betekent dat je ook klantcontact hebt in je rol en werkshops geeft. De verhouding tussen deze werkzaamheden zijn ongeveer 70% development en 30% consultancy. Een

Bekijk vacature »

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

Traineeship ICT regio Amsterdam/Utrecht

Wat ga je doen? Het traineeship begint met een fulltime maand cursussen en praktijkdagen, waarin je de basis van het IT-vak leert op de Shared Servicedesk (SSD). Daarnaast ga je meteen aan de slag voor je eerste certificering! (ITILv4). Je start in een groep met 4 tot 10 deelnemers, waarmee jij gedurende die maand optrekt en je kennis kunt delen. Na het voltooien van de eerste maand ga je direct voor een langere periode aan de slag bij één van onze klanten of blijf je intern bij ons op de Shared Servicedesk. Je bent het eerste aanspreekpunt van de eindgebruikers

Bekijk vacature »

Java Developer

Dit ga je doen Ontwerpen en bouwen van nieuwe functionaliteiten binnen de complexe omgeving; Proactief de processen kwalitatief en efficient inrichten; Opzetten van Unit Tests; Code Reviews; Regie nemen voor innovatieve projecten; Landschap beheren en de bijbehorende ketens hierbij in het oog houden. Hier ga je werken De organisatie is actief binnen de financiele branche en heeft een IT afdeling van circa 450 man. De organisatie voorziet de maatschappij binnen de financiele dienstverlening en is gedurende de jaren een onmisbare schakel geworden. Het is een high profile organisatie waar ze veel te maken hebben met veranderingen voortkomend uit maatschappelijke ontwikkelingen,

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 »

Software Developer

Functie omschrijving Psst hé jij daar! Op zoek naar een nieuwe uitdaging als developer? Wacht niet langer en reageer direct. In deze functie ga je bij een familiebedrijf werken als developer. Je gaat maatwerk software ontwikkelen met de Microsoft stack. Je gebruikt technieken als C#, ASP.NET en MVC. Je werkt in een leuk team van andere developers. Je krijgt veel vrijheid in je werk en kan flexibel werken. Dagje thuiswerken? Geen probleem! Daarnaast is er veel ruimte om écht mee te denken met het bedrijf en met de klanten. Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Vanaf

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET developer start jij in een development team met twee ervaren software ontwikkelaars. Jouw persoonlijke ontwikkeling is voor ons erg belangrijk en jij gaat dan ook meelopen met onze Senior .NET ontwikkelaar die jou met zijn kennis en ervaring een goede begeleiding kan aanbieden. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit

Bekijk vacature »

Fullstack Developer

Functieomschrijving Heb je kort geleden jouw HBO diploma ICT development behaald? Of zit je nog aan het begin van je carrière en heb je affiniteit met C#.NET? Voor een erkende werkgever in de omgeving van Oosterhout zijn wij op zoek naar een fullstack developer. Als C#.NET developer werk je samen met een vooruitstrevend team aan het ontwikkelen van maatwerk software voor klanten. Je hebt affiniteit met SQL, maar nog belangrijker is dat je kennis en ervaring hebt met C#.NET. Jouw werkzaamheden zien er als volgt uit: Het ontwikkelen van onze high-availability en high-performance backend; Je begint de dag rond 8:30

Bekijk vacature »

Front-End Developer

As a Front-End Developer at Coolblue you improve the user-friendliness of our webshop for millions of customers. How do I become a 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 these within the team. You also take pride in your work and welcome any feedback. Would you like to become a Front-End Developer at Coolblue? Read below if the job suits you. You

Bekijk vacature »

Software Developer

Dit ga je doen Je bent verantwoordelijk voor de warehouse applicatie die een integratie heeft met de PLC laag; Je ontwikkelt in C#/.Net; Je werkt mee aan de migratie naar .NET 6; Je bent verantwoordelijk voor het ontwikkelen van interfaces en het visualiseren van componenten; Je denkt mee over het design voor business oplossingen; Je bent verantwoordelijk voor het testen van de gebouwde oplossing. Hier ga je werken Voor een internationale organisatie in de transport zijn wij momenteel op zoek naar een Software Developer. Zij zijn wereldwijd de grootste speler en lopen voorop met het automatiseren van alle processen van

Bekijk vacature »

Senior Front-end Developer

Dit ga je doen Met behulp van diverse programmeertalen ontwikkelen van Front-end software; Het begeleiden van het front-end team; Het oplossen van incidenten; Het bijhouden van een backlog; Je hebt een actieve bijdrage in de wekelijkse overleggen met de omliggende teams; Je houdt trends bij en adviseert het management hierover waar nodig; Helder communiceren met de stakeholders om hen zo mee te nemen in projecten en laten inzien wat de duur en toegevoegde waarde van bepaalde projecten is. Hier ga je werken Deze organisatie heeft circa 40 miljoen bezoekers per maand en heeft innovatie hoog in het vaandel staan. Het

Bekijk vacature »

Software Programmeur PHP - JAVA

Functie Wil jij bij een platte en informele organisatie werken? Lees dan snel verder! Voor een opdrachtgever in omgeving Rotterdam dat zich gespecialiseerd heeft in het realiseren van veilige netwerkverbindingen zijn wij op zoek naar een leuke software developer ter versterking van het huidige team. Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen PHP, JAVA en Node.js. Je gaat klanten ondersteunen op het gebied van geleverde software en webapplicaties. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn

Bekijk vacature »

Pagina: 1 2 volgende »

Daniel van Seggelen

Daniel van Seggelen

14/03/2017 14:04:41
Quote Anchor link
Er is een bug want watchposition werkt niet zoals staat beschreven.
Hij laad de functie elke keer weer, zonder dat het apparaat veranderd van locatie. Zelfs via mijn laptop.

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
window.setInterval(function() {
        showlocation();
      }
  , 2000);  // 2000==2 seconds
      function showlocation() {
        navigator.geolocation.watchPosition(callback);
      }
      function callback(position) {
        var lat = position.coords.latitude;
        var lng = position.coords.longitude;
        $.post('<?=HTML_ROOT?>inc/addcurrentloc.php', 'lat=' + lat + '&lng=' + lng, function(response) {
          console.log(response);
        }
              );;
      }


om de 2 seconde word de callback geladen. Hij hoort zo te werken dat hij hem alleen laad als de positie wijzigd.
Weet iemand waarom?
 
PHP hulp

PHP hulp

29/04/2024 04:50:54
 
Ivo P

Ivo P

14/03/2017 15:05:12
Quote Anchor link
De letter T lijkt wat te haperen?? (een keer of 5)

Met welke browser probeer je dit uit?
 
Daniel van Seggelen

Daniel van Seggelen

14/03/2017 15:44:53
Quote Anchor link
Letter T waar?
Ik gebruik chrome.

Ik lees een vergelijkbaar probleem hier: http://stackoverflow.com/questions/6183463/when-using-setinterval-if-i-switch-tabs-in-chrome-and-go-back-the-slider-goes

Ik heb alle oplossingen daar geprobeert, maar er veranderd niks.
Als ik van tab verwissel en weer terug ga dan laad hij het meerdere keren hoe langer ik dus niet op de tab ben gefocussed, hoe meer hij dat inhaalt.

UPDATE

Firefox doet nog veel erger. om de 1 MS worden er ruim 10 calls aangeroepen. ONgelofelijk veel.

Is hier geen normale oplossing voor?

Ik denk dat mensen beter "getCurrentPosition" kunnen gebruiken om de x aantal sseconden, want anders word je server overloaded, erg slecht die watch position dus.

Als ik wat options erbij die:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
var options = {enableHighAccuracy: false,timeout: 5000,maximumAge: 0,desiredAccuracy: 0, frequency: 1 };

  function showlocation() {
        navigator.geolocation.watchPosition(callback,error,options);
      }


Ik krijg dan steeds ERROR(3): Timeout expired
als ik van tab 1 seconde wissel en terug kom, dan zijn er 100den calls gedaan.
Gewijzigd op 14/03/2017 16:22:59 door Daniel van Seggelen
 
Ivo P

Ivo P

14/03/2017 16:51:14
Quote Anchor link
draait je site op SSL?

Chrome zou dat niet meer zonder willen accepteren. (geolocation is gevoelige info)

--------------
hij laadt
het apparaat verandert
etc
 
Daniel van Seggelen

Daniel van Seggelen

14/03/2017 16:58:54
Quote Anchor link
Ja het moet onder SSL idd, maar ik test het via localhost, dat word ook toegelaten door chrome, maar het probleem kan ik tot nu toe nog niet oplossen.
 
Ben van Velzen

Ben van Velzen

14/03/2017 17:01:37
Quote Anchor link
Als je iedere keer een nieuwe watchposition maakt met setInterval, waarom verwacht je dan dat hij echt kan watchen? Je stelt 1 keer een callback in, niet elke 2 seconden. Zo te zien ligt de bug niet in watchposition, maar in het feit dat je het niet als watch gebruikt maar om direct de locatie op te vragen. Dat geeft uiteraard initieel altijd een resultaat, en niet alleen wanneer de positie verandert.
Gewijzigd op 14/03/2017 17:03:19 door Ben van Velzen
 
Daniel van Seggelen

Daniel van Seggelen

14/03/2017 17:06:53
Quote Anchor link
De reden is omdat wanneer ik deze wijze niet gebruik, zelfs met mijn laptop, dan blijft hij de watchposition functie aanroepen, terwijl ik niet van locatie verander.

Ik zoek dus een manier dat ik watchposition kan instellen om de positie om de x aantal sec te bekijken en de callback functie uitvoert. Ik wil geen serveroverload als 1000 gebruikers deze functie gebruiken op deze manier

Deze functie zet de coordinaten in de database alleen als het verschil met de vorige locatie groter is dan 10 meter.
Gewijzigd op 14/03/2017 17:08:18 door Daniel van Seggelen
 
Ben van Velzen

Ben van Velzen

14/03/2017 17:10:45
Quote Anchor link
Dan zet je die eisen in de callback functie, het gebruik van setInterval is nergens voor nodig en werkt averechts.
 
Daniel van Seggelen

Daniel van Seggelen

14/03/2017 17:19:25
Quote Anchor link
Maar als ik die eisen in de callback functie wil zetten, hoe doe ik dat dan anders als setinterval of settimeout ?

UPDATE,

ook al gebruik ik die setinterval niet,dus
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
var options = {enableHighAccuracy: false,timeout: 5000,maximumAge: 0,desiredAccuracy: 0, frequency: 1 };

watchID = navigator.geolocation.watchPosition(callback, error, options);

      function callback(position) {
        var lat = position.coords.latitude;
        var lng = position.coords.longitude;
        $.post('<?=HTML_ROOT?>inc/addcurrentloc.php', 'lat=' + lat + '&lng=' + lng, function(response)
        {
          console.log(response);
        }
       );
      }


het blijft net zo buggy, elke keer als ik van tab verwissel en weer terug ga, dan word de call 5 keer aangeroepen binnen 1 seconde.
watchposition ziet dus niet goed of een apparaat beweegt of niet.
Gewijzigd op 14/03/2017 17:23:41 door Daniel van Seggelen
 
Ben van Velzen

Ben van Velzen

14/03/2017 17:39:48
Quote Anchor link
>> watchposition ziet dus niet goed of een apparaat beweegt of niet.
Waarom controleer je dan niet in de callback functie of de positie veranderd is?
 
Daniel van Seggelen

Daniel van Seggelen

14/03/2017 18:05:21
Quote Anchor link
Ik doe dat nu in de backend met php, maar hij blijft de callback aanroepen. Ik zoek een manier om de callback niet zo vaak aan te roepen, dus om de 10 seconde bijv. Of als er een manier in om de controleren in de clintside wat de laatste positie is, wat voor minder overhead zorgt, dat ga ik daarvoor.
Hij bekijkt nu dus al in addcurrentloc.php of de positie veranderd is, dat zit in de callback functie, maar ik probeer de overhead te minimaliseren.
 
Ben van Velzen

Ben van Velzen

14/03/2017 18:13:32
Quote Anchor link
Je moet het op het frontend controleren, dan filter je automatisch alles weg wat je niet nodig hebt.
Hoe lastig is dat?
 
Daniel van Seggelen

Daniel van Seggelen

14/03/2017 18:21:56
Quote Anchor link
Alles is makkelijk als je weet hoe.Ik kan hier geen goede oplossing voor vinden zonder een overhead.
Heb je advies?
 
Ben van Velzen

Ben van Velzen

14/03/2017 18:42:55
Quote Anchor link
Hoezo niet? Je slaat in je callback functie op wat de laatst bekende positie was. Wanneer deze gelijk is aan de huidige positie return je uit de callback zonder een request te doen. Hetzelfde geldt voor afstand, gewoon vergelijken met de laatst bekende positie. Dit hoeft niet in PHP (al is het handig om het daar ook te doen) en kan gewoon in je callback functie.
 
Daniel van Seggelen

Daniel van Seggelen

14/03/2017 18:53:45
Quote Anchor link
Ik ben geeen query expert, mijn vraag is dus, hoe doe ik dit in jquery/js ? Alvast bedankt
 
Ivo P

Ivo P

14/03/2017 19:00:14
Quote Anchor link
zonder de code verder te controleren:

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
var options = {enableHighAccuracy: false,timeout: 5000,maximumAge: 0,desiredAccuracy: 0, frequency: 1 };

watchID = navigator.geolocation.watchPosition(callback, error, options);
var prevlat = 0;
var prevlng = 0;

      function callback(position) {
        var lat = position.coords.latitude;
        var lng = position.coords.longitude;
        if(prevlat != lat || prevlng != lng) {
          prevlat = lat;
          prevlng = lng;
          $.post('<?=HTML_ROOT?>inc/addcurrentloc.php', 'lat=' + lat + '&lng=' + lng, function(response)
          {
            console.log(response);
          }
        }
       );
      }
 
Ben van Velzen

Ben van Velzen

14/03/2017 19:00:14
Quote Anchor link
Basisopzetje, het maakt niet uit "hoe goed" je bent, je moet de logica gewoon doorgronden.

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
var options = {enableHighAccuracy: false,timeout: 5000,maximumAge: 0,desiredAccuracy: 0, frequency: 1 };
var oldlat = 0;
var oldlng = 0;

watchID = navigator.geolocation.watchPosition(callback, error, options);

function callback(position) {
  var lat = position.coords.latitude;
  var lng = position.coords.longitude;
  if (lat == oldlat && lng == oldlng) {
    return;
  }
  oldlat = lat;
  oldlng = lng;
  $.post('<?=HTML_ROOT?>inc/addcurrentloc.php', 'lat=' + lat + '&lng=' + lng, function(response)
    {
     console.log(response);
    }
  );
}
 
Ivo P

Ivo P

14/03/2017 19:00:56
Quote Anchor link
vrijwel gelijk :-)
 
Daniel van Seggelen

Daniel van Seggelen

14/03/2017 19:43:33
Quote Anchor link
Dit is niet wat ik bedoel.Op deze manier kijk je gewoon of de oude coordinates exact hetzeflde zijn en de nieuwe.

ik wil erachter komen, hoe ik de afstand van de oude en nieuwe coordinaten in meters kan berekenen.
Als de nieuwe locatie 1 meter is, dan wil ik die call naar addcurrentloc.php niet uitvoeren. Zoals ik aangaf is de watchposition niet foutloos. Hij blijft aangeven dat mijn locatie een aantal centimeters wellciht veranderd, terwijl hij niets veranderd. Als de afstand min 5 meter is, dan wil ik die call uitvoeren.

ik denk dat deze wel juist is

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
Alleen als de site verniewd word en oldlat,oldlng dan leeggehaald? hoe lang blijf hij dat onthouden? Wellicht beter in php sessies opslaan...
function getDistanceFromLatLonInKm(lat1,lon1,lat2,lon2) {
  var R = 6371; // Radius of the earth in km
  var dLat = deg2rad(lat2-lat1);  // deg2rad below
  var dLon = deg2rad(lon2-lon1);
  var a =
    Math.sin(dLat/2) * Math.sin(dLat/2) +
    Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) *
    Math.sin(dLon/2) * Math.sin(dLon/2)
    ;
  var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
  var d = R * c; // Distance in km
  return d / 1000;
}
 
Ben van Velzen

Ben van Velzen

14/03/2017 20:11:36
Quote Anchor link
Het ging om een basisopzet, zodat je de logica zou snappen. Het ging er niet om dat het de perfecte oplossing zou zijn, dat wordt ook nergens beweerd.
 
Daniel van Seggelen

Daniel van Seggelen

14/03/2017 20:24:15
Quote Anchor link
ok duidelijk :)
 

Pagina: 1 2 volgende »



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.