login  Naam:   Wachtwoord: 
Registreer je!
 Forum

AJAX decimaal getal (Opgelost)

Offline Pellens - 09/12/2008 21:19
Avatar van PellensPHP interesse Hi,

ik heb een ajax functie die een decimaal getal zou moeten doorsturen:
  1. ...
  2. var getal = 1.3;
  3. var url = "ajax/voegGetalToe.php?rand="+rand+"&getal="+getal;


Hij geeft dit op als Undefined (wnr ik met Firebug controleer), hoe los ik dit op?

11 antwoorden

Gesponsorde links
Offline Joost - 09/12/2008 21:32
Avatar van Joost PHP expert
  1. var getal = 1.3;
  2. var url = "ajax/voegGetalToe.php?rand="+encodeURIComponent(rand)+"&getal="+encodeURIComponent(getal);


Misschien werkt dat... 
Offline vinTage - 09/12/2008 21:34
Avatar van vinTage Nieuw lid var getal = 1.3;
var url = "ajax/voegGetalToe.php?rand="+rand+"&getal="+getal;

WAT geeft er undefined ? rand of getal ? 
Offline Pellens - 09/12/2008 21:40
Avatar van Pellens PHP interesse encodeURIComponent(getal) werkt niet...

hij geeft de waarde getal weer als undefined.
Offline vinTage - 09/12/2008 22:20
Avatar van vinTage Nieuw lid Probleem zit iig niet in de js code..
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  4. <title>Untitled Document</title>
  5. <script type="text/javascript">
  6. function blaat()
  7. {
  8. var getal = 1.3;
  9. var rand='weetikniet';
  10. var url = "ajax/voegGetalToe.php?rand="+rand+"&getal="+getal;
  11. alert(url)
  12. }
  13. </head>
  14.  
  15. <body onload="blaat()">
  16. </body>
  17. </html>
Offline Pellens - 09/12/2008 22:30
Avatar van Pellens PHP interesse Alert geeft dus ook "undefined" weer, dat had ik al getest...

Wat extra info: het getal is een longitude van GoogleMaps. Ik wil deze waarde sturen naar voegGetalToe.php dus.

Kan ik deze longitude niet transformeren in JS en de-transformeren in de PHP pagina ofzo?
Offline vinTage - 09/12/2008 22:32
Avatar van vinTage Nieuw lid Als je de code paste die ik hierboven geef, dan zie je dat het niet ligt aan de door jouw gegeven code in je startpost....

Al de rest moeten wij verzinnen ?
Offline Pellens - 09/12/2008 23:02 (laatste wijziging 09/12/2008 23:04)
Avatar van Pellens PHP interesse Mijn excuses vinTage... Er gebeurt idd iets verkeerd alvorens ik var getal in de var url steekt... FF wat meer uitleg!

Hier is de functie die de longitude opvraagt:

  1. function showAdressLon(adres)
  2. {
  3. geocoder = new GClientGeocoder();
  4.  
  5. var address = adres;
  6. if (geocoder)
  7. {
  8. geocoder.getLatLng(address,function(point)
  9. {
  10. if (!point)
  11. {
  12. alert(address + " not found");
  13. }
  14. else
  15. {
  16. var lon = point.x;
  17. }
  18. });
  19. }
  20.  
  21. return(lon);
  22. }


(Uit een test blijkt dat point.x wel degelijk correct is en werkt...)
Dan weer zoals net:

  1. ...
  2. var adres = "Turkije"; // even een voorbeeldje
  3. var getal = showAdressLon(adres); // hier wordt de longitude opgevraagt
  4. var url = "ajax/voegGetalToe.php?rand="+rand+"&getal="+getal;
  5. ...


De fout zit em dus bij de return...
Offline vinTage - 09/12/2008 23:40
Avatar van vinTage Nieuw lid hmm. ik heb ook wel met googlemaps gewerkt, maar kan me point.x zo gauw niet meer herinneren, wat gebeurd er als je daar "var lon = 'aap' " van maakt ?
Offline Pellens - 10/12/2008 00:12 (laatste wijziging 10/12/2008 12:57)
Avatar van Pellens PHP interesse Hij geeft ook met deze verandering nog steeds de error:

lon is not defined
return(lon);

Edit: om te testen heb ik point.x in een div laten 'innerHTML'-en, er wordt een juiste waarde weergeven. Enkel met de return of het declareren loopt het dus fout...
Offline vinTage - 10/12/2008 15:51 (laatste wijziging 10/12/2008 15:53)
Avatar van vinTage Nieuw lid Probeer eens zo:
  1. function showAdressLon(adres)
  2. {
  3. geocoder = new GClientGeocoder();
  4. var lon;
  5. var address = adres;
  6. if (geocoder)
  7. {
  8. geocoder.getLatLng(address,function(point)
  9. {
  10. if (!point)
  11. {
  12. alert(address + " not found");
  13. }
  14. else
  15. {
  16. lon = point.x;
  17. }
  18. });
  19. }
  20. else
  21. {
  22. alert('geen geocoder');
  23. }
  24.  
  25. return(lon);
  26. }
Offline Pellens - 10/12/2008 19:25 (laatste wijziging 10/12/2008 23:23)
Avatar van Pellens PHP interesse Spijtig dat het antwoord niet gevonden kan worden...

Ik heb het dus op een andere manier wel bollend gekregen. De point.x en point.y heb ik rechtstreeks gebruikt in de AJAX functie.

Dus niet meer een functie die 'lon' en 'lat' eerst opvraagt...
Ik zeg het maar, moest iemand dit probleem ook tegenkomen!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.172s