Post samen met Google API
Ik ben bezig een formulier te maken wat zowel de “ normale” post afhandelt als de onsubmit="showLocation() die ik nodig heb ivm met het opvragen van kilometers via Google API. Ze staan hieronder allebei in het formulier maar dat werkt dus niet. Ik krijg of de variabel via post binnen of Googl API werkt goed. Hou krijg ik het beide werkend?
Wie kan me helpen?
Groet,
Hans
Code (php)
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
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
<body onload="initialize()">
<form method="POST" action="postcode.php" onsubmit="showLocation(); return false;">
<div>
<input id="postcode" type="text" name="address1" value="1326 NA"/><br />
<input type="hidden" name="address2" value="1118 AX" />
<label for="postcode">Vervoermiddel:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze -</option>
<option value="1" #VMselPA# >Personen auto max. 4 pers.</option>
<option value="2" #VMselB6# >Busje max. 6 pers.</option>
<option value="3" #VMselB8# >Busje max. 8 pers.</option>
</select>
<label for="postcode">Aantal personen:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze - </option>
<option value="1" #NrPers1# >1 passagiers</option>
<option value="2" #NrPers2# >2 passagiers</option>
<option value="3" #NrPers3# >3 passagiers</option>
<option value="4" #NrPers4# >4 passagiers</option>
<option value="5" #NrPers5# >5 passagiers</option>
<option value="6" #NrPers6# >6 passagiers</option>
<option value="7" #NrPers7# >7 passagiers</option>
<option value="8" #NrPers8# >8 passagiers</option>
</select>
<input name="submit" type="submit" value="Bereken Prijs" />
</div>
</form>
</body>
</html>
<form method="POST" action="postcode.php" onsubmit="showLocation(); return false;">
<div>
<input id="postcode" type="text" name="address1" value="1326 NA"/><br />
<input type="hidden" name="address2" value="1118 AX" />
<label for="postcode">Vervoermiddel:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze -</option>
<option value="1" #VMselPA# >Personen auto max. 4 pers.</option>
<option value="2" #VMselB6# >Busje max. 6 pers.</option>
<option value="3" #VMselB8# >Busje max. 8 pers.</option>
</select>
<label for="postcode">Aantal personen:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze - </option>
<option value="1" #NrPers1# >1 passagiers</option>
<option value="2" #NrPers2# >2 passagiers</option>
<option value="3" #NrPers3# >3 passagiers</option>
<option value="4" #NrPers4# >4 passagiers</option>
<option value="5" #NrPers5# >5 passagiers</option>
<option value="6" #NrPers6# >6 passagiers</option>
<option value="7" #NrPers7# >7 passagiers</option>
<option value="8" #NrPers8# >8 passagiers</option>
</select>
<input name="submit" type="submit" value="Bereken Prijs" />
</div>
</form>
</body>
</html>
Voortaan even de code tags gebruiken [/modedit]
Gewijzigd op 14/11/2010 16:09:36 door Justin S
Ik snap je vraag niet?
Gr. Hans
Je zat de javascript eerder moeten verzenden dan de serverside code. De serverside gaat voor javascript. Oftewel, je moet zorgen dat het aantal kilometers worden meegezonden naar de PHP kant. Probeer bijvoorbeeld het aantal kilometers te berekenen op het moment de postcode is ingevoerd, stop deze waarde direct in een hidden form field en stuur deze mee naar het verwerkscript :-).
<form method="POST" action="postcode.php" onsubmit="showLocation(); return false;"> werkt het javascript wel en post niet!?
Hans
Die onsubmit moet er dus uit, en dat moet je ondervangen door javascript al af te hebben gerond voordat de client op submit drukt.
Gr. Hans
Hoe bereken je de kilometers? (plaats even heel je script)
Code (php)
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
<?php
session_start();
include ("/home/deb35110/domains/taxi2me.nl/public_html/resources/includes/verbinding.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<link type="text/css" rel="stylesheet" href="style.css" media="screen" />
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAgV13-t4t3STpZlalXFAmzxQWUOUdy4en180hY4LdqgARW0NSBBR4VptnbNX5MzDRXExbmWRMpnIwGA" type="text/javascript"></script>
<!-- According to the Google Maps API Terms of Service you are required display a Google map when using the Google Maps API. see: http://code.google.com/apis/maps/terms.html -->
</head>
<body>
<?php
$pkVervoermiddelId = 1;
$ritSoortId = 2;
if($_SERVER["REQUEST_METHOD"] == "POST"){
$pkVervoermiddelId = $_POST["pkVervoermiddelId"];
echo $_POST["pkVervoermiddelId"];
}
if(!empty($_GET['km'])){
//if($_SERVER['REQUEST_METHOD'] == "POST"){
$km = $_GET['km'];
$Adres1 = $_GET['adres1'];
$Adres2 = $_GET['adres2'];
$ritSoortId = 2;
echo "De afstand is $km kilometer";
$result = @mysql_query("SELECT * FROM `vervoermiddelPrijzen` WHERE fkVervoermiddelId = '$pkVervoermiddelId' AND fkRitSoort = '$ritSoortId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
while($gegevens = @mysql_fetch_assoc($result))
{
if ($gegevens["kmVan"] <= $km){
if($gegevens["kmTot"] < $km) $kilometers = $gegevens["kmTot"]-$gegevens["kmVan"];
else $kilometers = (($gegevens["kmVan"]-$km)*(-1))+1;
$ritPrijs += $gegevens["tariefInstap"] + ($gegevens["tariefKm"] * $kilometers);
// Commissie ophalen (Vervoermiddel)
$result2 = @mysql_query("SELECT * FROM `vervoermiddelen` WHERE pkVervoermiddelId = '$pkVervoermiddelId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
$vervoermiddelPrijzen = @mysql_fetch_assoc($result2);
// Ophalen van commissie per persoon
if($vervoermiddelPrijzen["personenMin"] > $ritAantalPersonen) $fkAantalPersonen = $vervoermiddelPrijzen["personenMin"];
else $fkAantalPersonen = $ritAantalPersonen;
// Commissie van de chauffeur - afronden op 50 cent
$commissieChauffeur = $ritPrijs * ($vervoermiddelPrijzen['commissie'.$fkAantalPersonen]/100);
$commissieChauffeur = round(($commissieChauffeur * 2), 0) / 2;
// Toeslag berekenen.
//echo "<br>".$ritPrijs;
//echo "<br>".$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]."%";
$ritPrijs = $ritPrijs + (($ritPrijs/100)*$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]);
$ritPrijs = round(($ritPrijs * 2), 0) / 2;
echo "<br>De prijs is $ritPrijs Euro";
} }}
//}
?>
<script type="text/javascript">
var geocoder, location1, location2, gDir;
function initialize() {
geocoder = new GClientGeocoder();
gDir = new GDirections();
GEvent.addListener(gDir, "load", function() {
var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
km = Math.round(drivingDistanceKilometers + 0.5)
if (km > 0 ) {
window.location.href = "http://taxi2me.nl/ROUTE/postcode.php?km=" + km + "&adres1=" + location1.address + "&adres2=" + location2.address;
}
document.getElementById('results').innerHTML = '<strong>Address 1: </strong>' + location1.address + '<br /><strong>Address 2: </strong>' + location2.address + '<br /><strong>Afstand: </strong>' + drivingDistanceKilometers + ' kilometers';
});
}
function showLocation() {
geocoder.getLocations(document.forms[0].address1.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the first address");
}
else
{
location1 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
geocoder.getLocations(document.forms[0].address2.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the second address");
}
else
{
location2 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
gDir.load('from: ' + location1.address + ' to: ' + location2.address);
}
});
}
});
}
</script>
<body onload="initialize()">
<form method="POST" action="postcode.php" onsubmit="showLocation(); return false;">
<div>
<input id="postcode" type="text" name="address1" value="1326 NA"/><br />
<input type="hidden" name="address2" value="1118 AX" />
<label for="postcode">Vervoermiddel:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze -</option>
<option value="1" #VMselPA# >Personen auto max. 4 pers.</option>
<option value="2" #VMselB6# >Busje max. 6 pers.</option>
<option value="3" #VMselB8# >Busje max. 8 pers.</option>
</select>
<label for="postcode">Aantal personen:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze - </option>
<option value="1" #NrPers1# >1 passagiers</option>
<option value="2" #NrPers2# >2 passagiers</option>
<option value="3" #NrPers3# >3 passagiers</option>
<option value="4" #NrPers4# >4 passagiers</option>
<option value="5" #NrPers5# >5 passagiers</option>
<option value="6" #NrPers6# >6 passagiers</option>
<option value="7" #NrPers7# >7 passagiers</option>
<option value="8" #NrPers8# >8 passagiers</option>
</select>
<input name="submit" type="submit" value="Bereken Prijs" />
</div>
</form>
</body>
</html>
session_start();
include ("/home/deb35110/domains/taxi2me.nl/public_html/resources/includes/verbinding.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<link type="text/css" rel="stylesheet" href="style.css" media="screen" />
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAgV13-t4t3STpZlalXFAmzxQWUOUdy4en180hY4LdqgARW0NSBBR4VptnbNX5MzDRXExbmWRMpnIwGA" type="text/javascript"></script>
<!-- According to the Google Maps API Terms of Service you are required display a Google map when using the Google Maps API. see: http://code.google.com/apis/maps/terms.html -->
</head>
<body>
<?php
$pkVervoermiddelId = 1;
$ritSoortId = 2;
if($_SERVER["REQUEST_METHOD"] == "POST"){
$pkVervoermiddelId = $_POST["pkVervoermiddelId"];
echo $_POST["pkVervoermiddelId"];
}
if(!empty($_GET['km'])){
//if($_SERVER['REQUEST_METHOD'] == "POST"){
$km = $_GET['km'];
$Adres1 = $_GET['adres1'];
$Adres2 = $_GET['adres2'];
$ritSoortId = 2;
echo "De afstand is $km kilometer";
$result = @mysql_query("SELECT * FROM `vervoermiddelPrijzen` WHERE fkVervoermiddelId = '$pkVervoermiddelId' AND fkRitSoort = '$ritSoortId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
while($gegevens = @mysql_fetch_assoc($result))
{
if ($gegevens["kmVan"] <= $km){
if($gegevens["kmTot"] < $km) $kilometers = $gegevens["kmTot"]-$gegevens["kmVan"];
else $kilometers = (($gegevens["kmVan"]-$km)*(-1))+1;
$ritPrijs += $gegevens["tariefInstap"] + ($gegevens["tariefKm"] * $kilometers);
// Commissie ophalen (Vervoermiddel)
$result2 = @mysql_query("SELECT * FROM `vervoermiddelen` WHERE pkVervoermiddelId = '$pkVervoermiddelId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
$vervoermiddelPrijzen = @mysql_fetch_assoc($result2);
// Ophalen van commissie per persoon
if($vervoermiddelPrijzen["personenMin"] > $ritAantalPersonen) $fkAantalPersonen = $vervoermiddelPrijzen["personenMin"];
else $fkAantalPersonen = $ritAantalPersonen;
// Commissie van de chauffeur - afronden op 50 cent
$commissieChauffeur = $ritPrijs * ($vervoermiddelPrijzen['commissie'.$fkAantalPersonen]/100);
$commissieChauffeur = round(($commissieChauffeur * 2), 0) / 2;
// Toeslag berekenen.
//echo "<br>".$ritPrijs;
//echo "<br>".$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]."%";
$ritPrijs = $ritPrijs + (($ritPrijs/100)*$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]);
$ritPrijs = round(($ritPrijs * 2), 0) / 2;
echo "<br>De prijs is $ritPrijs Euro";
} }}
//}
?>
<script type="text/javascript">
var geocoder, location1, location2, gDir;
function initialize() {
geocoder = new GClientGeocoder();
gDir = new GDirections();
GEvent.addListener(gDir, "load", function() {
var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
km = Math.round(drivingDistanceKilometers + 0.5)
if (km > 0 ) {
window.location.href = "http://taxi2me.nl/ROUTE/postcode.php?km=" + km + "&adres1=" + location1.address + "&adres2=" + location2.address;
}
document.getElementById('results').innerHTML = '<strong>Address 1: </strong>' + location1.address + '<br /><strong>Address 2: </strong>' + location2.address + '<br /><strong>Afstand: </strong>' + drivingDistanceKilometers + ' kilometers';
});
}
function showLocation() {
geocoder.getLocations(document.forms[0].address1.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the first address");
}
else
{
location1 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
geocoder.getLocations(document.forms[0].address2.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the second address");
}
else
{
location2 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
gDir.load('from: ' + location1.address + ' to: ' + location2.address);
}
});
}
});
}
</script>
<body onload="initialize()">
<form method="POST" action="postcode.php" onsubmit="showLocation(); return false;">
<div>
<input id="postcode" type="text" name="address1" value="1326 NA"/><br />
<input type="hidden" name="address2" value="1118 AX" />
<label for="postcode">Vervoermiddel:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze -</option>
<option value="1" #VMselPA# >Personen auto max. 4 pers.</option>
<option value="2" #VMselB6# >Busje max. 6 pers.</option>
<option value="3" #VMselB8# >Busje max. 8 pers.</option>
</select>
<label for="postcode">Aantal personen:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze - </option>
<option value="1" #NrPers1# >1 passagiers</option>
<option value="2" #NrPers2# >2 passagiers</option>
<option value="3" #NrPers3# >3 passagiers</option>
<option value="4" #NrPers4# >4 passagiers</option>
<option value="5" #NrPers5# >5 passagiers</option>
<option value="6" #NrPers6# >6 passagiers</option>
<option value="7" #NrPers7# >7 passagiers</option>
<option value="8" #NrPers8# >8 passagiers</option>
</select>
<input name="submit" type="submit" value="Bereken Prijs" />
</div>
</form>
</body>
</html>
Gewijzigd op 14/11/2010 17:00:27 door Justin S
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function initialize() {
geocoder = new GClientGeocoder();
gDir = new GDirections();
GEvent.addListener(gDir, "load", function() {
var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
km = Math.round(drivingDistanceKilometers + 0.5)
if (km > 0 ) {
window.location.href = "http://taxi2me.nl/ROUTE/postcode.php?km=" + km + "&adres1=" + location1.address + "&adres2=" + location2.address;
}
document.getElementById('results').innerHTML = '<strong>Address 1: </strong>' + location1.address + '<br /><strong>Address 2: </strong>' + location2.address + '<br /><strong>Afstand: </strong>' + drivingDistanceKilometers + ' kilometers';
});
}
geocoder = new GClientGeocoder();
gDir = new GDirections();
GEvent.addListener(gDir, "load", function() {
var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
km = Math.round(drivingDistanceKilometers + 0.5)
if (km > 0 ) {
window.location.href = "http://taxi2me.nl/ROUTE/postcode.php?km=" + km + "&adres1=" + location1.address + "&adres2=" + location2.address;
}
document.getElementById('results').innerHTML = '<strong>Address 1: </strong>' + location1.address + '<br /><strong>Address 2: </strong>' + location2.address + '<br /><strong>Afstand: </strong>' + drivingDistanceKilometers + ' kilometers';
});
}
Is dat driveDistanceKilometers of KM?
Heet het bestand ook postcode.php?
Gewijzigd op 14/11/2010 17:06:09 door Justin S
En dan met $_Get de waardes eruit vissen, want met document.getElementById kan ik in php niet gebruiken:(
Je moet zorgen dat de value van het hidden field aantalkilometer wordt ingevuld met de waarde die komt uit het indienen van de postcode. dit zal dus de variabele km zijn. Dus dien je de value te vervangen.
Je input veld:
<input type="hidden" name="distance" value="" id="distancekm" />
Je javascript:
document.getElementById("distancekm").value = km;
Zo zou het moeten werken, beetje aanpassen hier en daar.
Het is NOOIT nodig in dit soort situaties om voor zoiets de URL aan te passen. Dit is niet veilig, onhandig en daarnaast niet erg slim omdat je zo meer code nodig hebt alles uit te filteren.
Toevoeging op 14/11/2010 17:27:52:
Het werkt niet. Heb nu:
Code (php)
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
<?php
session_start();
include ("/home/deb35110/domains/taxi2me.nl/public_html/resources/includes/verbinding.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<link type="text/css" rel="stylesheet" href="style.css" media="screen" />
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAgV13-t4t3STpZlalXFAmzxQWUOUdy4en180hY4LdqgARW0NSBBR4VptnbNX5MzDRXExbmWRMpnIwGA" type="text/javascript"></script>
<!-- According to the Google Maps API Terms of Service you are required display a Google map when using the Google Maps API. see: http://code.google.com/apis/maps/terms.html -->
</head>
<body>
<?php
echo $_POST["distance"];
$pkVervoermiddelId = 1;
$ritSoortId = 2;
if($_SERVER["REQUEST_METHOD"] == "POST"){
$pkVervoermiddelId = $_POST["pkVervoermiddelId"];
echo $_POST["distance"];
}
if(!empty($_GET['km'])){
//if($_SERVER['REQUEST_METHOD'] == "POST"){
$km = $_GET['km'];
$Adres1 = $_GET['adres1'];
$Adres2 = $_GET['adres2'];
$ritSoortId = 2;
echo "De afstand is $km kilometer";
$result = @mysql_query("SELECT * FROM `vervoermiddelPrijzen` WHERE fkVervoermiddelId = '$pkVervoermiddelId' AND fkRitSoort = '$ritSoortId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
while($gegevens = @mysql_fetch_assoc($result))
{
if ($gegevens["kmVan"] <= $km){
if($gegevens["kmTot"] < $km) $kilometers = $gegevens["kmTot"]-$gegevens["kmVan"];
else $kilometers = (($gegevens["kmVan"]-$km)*(-1))+1;
$ritPrijs += $gegevens["tariefInstap"] + ($gegevens["tariefKm"] * $kilometers);
// Commissie ophalen (Vervoermiddel)
$result2 = @mysql_query("SELECT * FROM `vervoermiddelen` WHERE pkVervoermiddelId = '$pkVervoermiddelId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
$vervoermiddelPrijzen = @mysql_fetch_assoc($result2);
// Ophalen van commissie per persoon
if($vervoermiddelPrijzen["personenMin"] > $ritAantalPersonen) $fkAantalPersonen = $vervoermiddelPrijzen["personenMin"];
else $fkAantalPersonen = $ritAantalPersonen;
// Commissie van de chauffeur - afronden op 50 cent
$commissieChauffeur = $ritPrijs * ($vervoermiddelPrijzen['commissie'.$fkAantalPersonen]/100);
$commissieChauffeur = round(($commissieChauffeur * 2), 0) / 2;
// Toeslag berekenen.
//echo "<br>".$ritPrijs;
//echo "<br>".$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]."%";
$ritPrijs = $ritPrijs + (($ritPrijs/100)*$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]);
$ritPrijs = round(($ritPrijs * 2), 0) / 2;
echo "<br>De prijs is $ritPrijs Euro";
} }}
//}
?>
<script type="text/javascript">
var geocoder, location1, location2, gDir;
function initialize() {
geocoder = new GClientGeocoder();
gDir = new GDirections();
GEvent.addListener(gDir, "load", function() {
var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
km = Math.round(drivingDistanceKilometers + 0.5)
}
document.getElementById("distancekm").value = km;
});
}
function showLocation() {
geocoder.getLocations(document.forms[0].address1.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the first address");
}
else
{
location1 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
geocoder.getLocations(document.forms[0].address2.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the second address");
}
else
{
location2 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
gDir.load('from: ' + location1.address + ' to: ' + location2.address);
}
});
}
});
}
</script>
<body onload="initialize()">
<form action="" onsubmit="showLocation(); return false;">
<div>
<input id="postcode" type="text" name="address1" value="1326 NA"/><br />
<input type="hidden" name="address2" value="1118 AX" />
<label for="postcode">Vervoermiddel:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze -</option>
<option value="1" #VMselPA# >Personen auto max. 4 pers.</option>
<option value="2" #VMselB6# >Busje max. 6 pers.</option>
<option value="3" #VMselB8# >Busje max. 8 pers.</option>
</select>
<label for="postcode">Aantal personen:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze - </option>
<option value="1" #NrPers1# >1 passagiers</option>
<option value="2" #NrPers2# >2 passagiers</option>
<option value="3" #NrPers3# >3 passagiers</option>
<option value="4" #NrPers4# >4 passagiers</option>
<option value="5" #NrPers5# >5 passagiers</option>
<option value="6" #NrPers6# >6 passagiers</option>
<option value="7" #NrPers7# >7 passagiers</option>
<option value="8" #NrPers8# >8 passagiers</option>
</select>
<input type="hidden" name="distance" value="" id="distancekm" />
<input name="submit" type="submit" value="Bereken Prijs" />
</div>
</form>
</body>
</html>
session_start();
include ("/home/deb35110/domains/taxi2me.nl/public_html/resources/includes/verbinding.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<link type="text/css" rel="stylesheet" href="style.css" media="screen" />
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAgV13-t4t3STpZlalXFAmzxQWUOUdy4en180hY4LdqgARW0NSBBR4VptnbNX5MzDRXExbmWRMpnIwGA" type="text/javascript"></script>
<!-- According to the Google Maps API Terms of Service you are required display a Google map when using the Google Maps API. see: http://code.google.com/apis/maps/terms.html -->
</head>
<body>
<?php
echo $_POST["distance"];
$pkVervoermiddelId = 1;
$ritSoortId = 2;
if($_SERVER["REQUEST_METHOD"] == "POST"){
$pkVervoermiddelId = $_POST["pkVervoermiddelId"];
echo $_POST["distance"];
}
if(!empty($_GET['km'])){
//if($_SERVER['REQUEST_METHOD'] == "POST"){
$km = $_GET['km'];
$Adres1 = $_GET['adres1'];
$Adres2 = $_GET['adres2'];
$ritSoortId = 2;
echo "De afstand is $km kilometer";
$result = @mysql_query("SELECT * FROM `vervoermiddelPrijzen` WHERE fkVervoermiddelId = '$pkVervoermiddelId' AND fkRitSoort = '$ritSoortId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
while($gegevens = @mysql_fetch_assoc($result))
{
if ($gegevens["kmVan"] <= $km){
if($gegevens["kmTot"] < $km) $kilometers = $gegevens["kmTot"]-$gegevens["kmVan"];
else $kilometers = (($gegevens["kmVan"]-$km)*(-1))+1;
$ritPrijs += $gegevens["tariefInstap"] + ($gegevens["tariefKm"] * $kilometers);
// Commissie ophalen (Vervoermiddel)
$result2 = @mysql_query("SELECT * FROM `vervoermiddelen` WHERE pkVervoermiddelId = '$pkVervoermiddelId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
$vervoermiddelPrijzen = @mysql_fetch_assoc($result2);
// Ophalen van commissie per persoon
if($vervoermiddelPrijzen["personenMin"] > $ritAantalPersonen) $fkAantalPersonen = $vervoermiddelPrijzen["personenMin"];
else $fkAantalPersonen = $ritAantalPersonen;
// Commissie van de chauffeur - afronden op 50 cent
$commissieChauffeur = $ritPrijs * ($vervoermiddelPrijzen['commissie'.$fkAantalPersonen]/100);
$commissieChauffeur = round(($commissieChauffeur * 2), 0) / 2;
// Toeslag berekenen.
//echo "<br>".$ritPrijs;
//echo "<br>".$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]."%";
$ritPrijs = $ritPrijs + (($ritPrijs/100)*$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]);
$ritPrijs = round(($ritPrijs * 2), 0) / 2;
echo "<br>De prijs is $ritPrijs Euro";
} }}
//}
?>
<script type="text/javascript">
var geocoder, location1, location2, gDir;
function initialize() {
geocoder = new GClientGeocoder();
gDir = new GDirections();
GEvent.addListener(gDir, "load", function() {
var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
km = Math.round(drivingDistanceKilometers + 0.5)
}
document.getElementById("distancekm").value = km;
});
}
function showLocation() {
geocoder.getLocations(document.forms[0].address1.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the first address");
}
else
{
location1 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
geocoder.getLocations(document.forms[0].address2.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the second address");
}
else
{
location2 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
gDir.load('from: ' + location1.address + ' to: ' + location2.address);
}
});
}
});
}
</script>
<body onload="initialize()">
<form action="" onsubmit="showLocation(); return false;">
<div>
<input id="postcode" type="text" name="address1" value="1326 NA"/><br />
<input type="hidden" name="address2" value="1118 AX" />
<label for="postcode">Vervoermiddel:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze -</option>
<option value="1" #VMselPA# >Personen auto max. 4 pers.</option>
<option value="2" #VMselB6# >Busje max. 6 pers.</option>
<option value="3" #VMselB8# >Busje max. 8 pers.</option>
</select>
<label for="postcode">Aantal personen:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze - </option>
<option value="1" #NrPers1# >1 passagiers</option>
<option value="2" #NrPers2# >2 passagiers</option>
<option value="3" #NrPers3# >3 passagiers</option>
<option value="4" #NrPers4# >4 passagiers</option>
<option value="5" #NrPers5# >5 passagiers</option>
<option value="6" #NrPers6# >6 passagiers</option>
<option value="7" #NrPers7# >7 passagiers</option>
<option value="8" #NrPers8# >8 passagiers</option>
</select>
<input type="hidden" name="distance" value="" id="distancekm" />
<input name="submit" type="submit" value="Bereken Prijs" />
</div>
</form>
</body>
</html>
Wil je voortaan de code tags gebruiken?[/modedit]
Gewijzigd op 14/11/2010 18:49:35 door Justin S
<form action="" method="post">
Heb je een online voorbeeld?
Gewijzigd op 14/11/2010 18:51:19 door Justin S
Volgens mij werkt een variabel van javascript niet met php.
Zie onder mijn script zoals het nu is:
Code (php)
1
2
3
4
2
3
4
<?php
session_start();
include ("/home/deb35110/domains/taxi2me.nl/public_html/resources/includes/verbinding.php");
?>
session_start();
include ("/home/deb35110/domains/taxi2me.nl/public_html/resources/includes/verbinding.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<link type="text/css" rel="stylesheet" href="style.css" media="screen" />
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAgV13-t4t3STpZlalXFAmzxQWUOUdy4en180hY4LdqgARW0NSBBR4VptnbNX5MzDRXExbmWRMpnIwGA" type="text/javascript"></script>
<!-- According to the Google Maps API Terms of Service you are required display a Google map when using the Google Maps API. see: http://code.google.com/apis/maps/terms.html -->
</head>
<body>
Code (php)
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
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
<?php
$afstand = $_POST["distance"];
echo "De afstand is: $afstand ";
$pkVervoermiddelId = 1;
$ritSoortId = 2;
if($_SERVER["REQUEST_METHOD"] == "POST"){
$pkVervoermiddelId = $_POST["pkVervoermiddelId"];
echo "Aantal personen is: $pkVervoermiddelId ";
}
if(!empty($_GET['km'])){
//if($_SERVER['REQUEST_METHOD'] == "POST"){
$km = $_GET['km'];
$Adres1 = $_GET['adres1'];
$Adres2 = $_GET['adres2'];
$ritSoortId = 2;
echo "De afstand is $km kilometer";
$result = @mysql_query("SELECT * FROM `vervoermiddelPrijzen` WHERE fkVervoermiddelId = '$pkVervoermiddelId' AND fkRitSoort = '$ritSoortId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
while($gegevens = @mysql_fetch_assoc($result))
{
if ($gegevens["kmVan"] <= $km){
if($gegevens["kmTot"] < $km) $kilometers = $gegevens["kmTot"]-$gegevens["kmVan"];
else $kilometers = (($gegevens["kmVan"]-$km)*(-1))+1;
$ritPrijs += $gegevens["tariefInstap"] + ($gegevens["tariefKm"] * $kilometers);
// Commissie ophalen (Vervoermiddel)
$result2 = @mysql_query("SELECT * FROM `vervoermiddelen` WHERE pkVervoermiddelId = '$pkVervoermiddelId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
$vervoermiddelPrijzen = @mysql_fetch_assoc($result2);
// Ophalen van commissie per persoon
if($vervoermiddelPrijzen["personenMin"] > $ritAantalPersonen) $fkAantalPersonen = $vervoermiddelPrijzen["personenMin"];
else $fkAantalPersonen = $ritAantalPersonen;
// Commissie van de chauffeur - afronden op 50 cent
$commissieChauffeur = $ritPrijs * ($vervoermiddelPrijzen['commissie'.$fkAantalPersonen]/100);
$commissieChauffeur = round(($commissieChauffeur * 2), 0) / 2;
// Toeslag berekenen.
//echo "<br>".$ritPrijs;
//echo "<br>".$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]."%";
$ritPrijs = $ritPrijs + (($ritPrijs/100)*$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]);
$ritPrijs = round(($ritPrijs * 2), 0) / 2;
echo "<br>De prijs is $ritPrijs Euro";
} }}
//}
?>
$afstand = $_POST["distance"];
echo "De afstand is: $afstand ";
$pkVervoermiddelId = 1;
$ritSoortId = 2;
if($_SERVER["REQUEST_METHOD"] == "POST"){
$pkVervoermiddelId = $_POST["pkVervoermiddelId"];
echo "Aantal personen is: $pkVervoermiddelId ";
}
if(!empty($_GET['km'])){
//if($_SERVER['REQUEST_METHOD'] == "POST"){
$km = $_GET['km'];
$Adres1 = $_GET['adres1'];
$Adres2 = $_GET['adres2'];
$ritSoortId = 2;
echo "De afstand is $km kilometer";
$result = @mysql_query("SELECT * FROM `vervoermiddelPrijzen` WHERE fkVervoermiddelId = '$pkVervoermiddelId' AND fkRitSoort = '$ritSoortId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
while($gegevens = @mysql_fetch_assoc($result))
{
if ($gegevens["kmVan"] <= $km){
if($gegevens["kmTot"] < $km) $kilometers = $gegevens["kmTot"]-$gegevens["kmVan"];
else $kilometers = (($gegevens["kmVan"]-$km)*(-1))+1;
$ritPrijs += $gegevens["tariefInstap"] + ($gegevens["tariefKm"] * $kilometers);
// Commissie ophalen (Vervoermiddel)
$result2 = @mysql_query("SELECT * FROM `vervoermiddelen` WHERE pkVervoermiddelId = '$pkVervoermiddelId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
$vervoermiddelPrijzen = @mysql_fetch_assoc($result2);
// Ophalen van commissie per persoon
if($vervoermiddelPrijzen["personenMin"] > $ritAantalPersonen) $fkAantalPersonen = $vervoermiddelPrijzen["personenMin"];
else $fkAantalPersonen = $ritAantalPersonen;
// Commissie van de chauffeur - afronden op 50 cent
$commissieChauffeur = $ritPrijs * ($vervoermiddelPrijzen['commissie'.$fkAantalPersonen]/100);
$commissieChauffeur = round(($commissieChauffeur * 2), 0) / 2;
// Toeslag berekenen.
//echo "<br>".$ritPrijs;
//echo "<br>".$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]."%";
$ritPrijs = $ritPrijs + (($ritPrijs/100)*$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]);
$ritPrijs = round(($ritPrijs * 2), 0) / 2;
echo "<br>De prijs is $ritPrijs Euro";
} }}
//}
?>
<script type="text/javascript">
var geocoder, location1, location2, gDir;
function initialize() {
geocoder = new GClientGeocoder();
gDir = new GDirections();
GEvent.addListener(gDir, "load", function() {
var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
km = Math.round(drivingDistanceKilometers + 0.5)
}
document.getElementById("distancekm").value = km;
});
}
function showLocation() {
geocoder.getLocations(document.forms[0].address1.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the first address");
}
else
{
location1 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
geocoder.getLocations(document.forms[0].address2.value, function (response) {
if (!response || response.Status.code != 200)
{
alert("Sorry, we were unable to geocode the second address");
}
else
{
location2 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
gDir.load('from: ' + location1.address + ' to: ' + location2.address);
}
});
}
});
}
</script>
<body onload="initialize()">
<form action="" method="post">
<div>
<input id="postcode" type="text" name="address1" value="1326 NA"/><br />
<input type="hidden" name="address2" value="1118 AX" />
<label for="postcode">Vervoermiddel:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze -</option>
<option value="1" #VMselPA# >Personen auto max. 4 pers.</option>
<option value="2" #VMselB6# >Busje max. 6 pers.</option>
<option value="3" #VMselB8# >Busje max. 8 pers.</option>
</select>
<label for="postcode">Aantal personen:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze - </option>
<option value="1" #NrPers1# >1 passagiers</option>
<option value="2" #NrPers2# >2 passagiers</option>
<option value="3" #NrPers3# >3 passagiers</option>
<option value="4" #NrPers4# >4 passagiers</option>
<option value="5" #NrPers5# >5 passagiers</option>
<option value="6" #NrPers6# >6 passagiers</option>
<option value="7" #NrPers7# >7 passagiers</option>
<option value="8" #NrPers8# >8 passagiers</option>
</select>
<input type="hidden" name="distance" value="" id="distancekm" />
<input name="submit" type="submit" value="Bereken Prijs" />
</div>
</form>
</body>
</html>
Daarnaast, je gebruikt variabelen binnen de quotes. Deze horen erbuiten:
Verder moet je eerst je script opnieuw opbouwen. Er staat een groot gedeelte in met allemaal $_GET variabelen die je niet meer nodig hebt.
Quote:
Volgens mij werkt een variabel van javascript niet met php.
Tuurlijk wel, als je het juist aanpakt wel...
Verder is je KM geen var. dit moet zijn:
Geef je form een name="pricecalculator" en selecteer je value zo:
De function showLocation(); kan je compleet weggooien aangezien deze overbodig is geworden.
In je php verwerking van het script ben je nog steeds bezig met $_GET['km'], dit moet je ombouwen dat dit POST worden en je moet je script eens nakijken op de werking.
Sorry maar ik ben nog niet zo erg thuis in dit geheel. Ik heb je aanwijzingen opgevolgd en de code wat netter bij elkaar gezet. Kom nog niet uit "code tags gebruiken" Als je dat nog even mee wilt geven doe ik dat ook.
Als met al werkt het nog steeds niet. Ik heb de code zoals nu weer even hieronder aangegeven. De echo "De afstand is: $afstand "; geeft nog steeds niets.
Ik ben je wel heel erg dankbaar voor je hulp tot nu toe :)
Hans
Code (php)
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
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
<?php
session_start();
include ("/home/deb35110/domains/taxi2me.nl/public_html/resources/includes/verbinding.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<link type="text/css" rel="stylesheet" href="style.css" media="screen" />
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAgV13-t4t3STpZlalXFAmzxQWUOUdy4en180hY4LdqgARW0NSBBR4VptnbNX5MzDRXExbmWRMpnIwGA" type="text/javascript"></script>
<!-- According to the Google Maps API Terms of Service you are required display a Google map when using the Google Maps API. see: http://code.google.com/apis/maps/terms.html -->
</head>
<body>
<?php
$afstand = $_POST["distance"];
echo 'De afstand is: '.$afstand;
$pkVervoermiddelId = 1;
$ritSoortId = 2;
if($_SERVER["REQUEST_METHOD"] == "POST"){
$pkVervoermiddelId = $_POST["pkVervoermiddelId"];
echo 'Aantal personen is: ' .$pkVervoermiddelId ;
}
if(!empty($_GET['km'])){
//if($_SERVER['REQUEST_METHOD'] == "POST"){
$ritSoortId = 2;
echo "De afstand is $km kilometer";
$result = @mysql_query("SELECT * FROM `vervoermiddelPrijzen` WHERE fkVervoermiddelId = '$pkVervoermiddelId' AND fkRitSoort = '$ritSoortId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
while($gegevens = @mysql_fetch_assoc($result))
{
if ($gegevens["kmVan"] <= $km){
if($gegevens["kmTot"] < $km) $kilometers = $gegevens["kmTot"]-$gegevens["kmVan"];
else $kilometers = (($gegevens["kmVan"]-$km)*(-1))+1;
$ritPrijs += $gegevens["tariefInstap"] + ($gegevens["tariefKm"] * $kilometers);
// Commissie ophalen (Vervoermiddel)
$result2 = @mysql_query("SELECT * FROM `vervoermiddelen` WHERE pkVervoermiddelId = '$pkVervoermiddelId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
$vervoermiddelPrijzen = @mysql_fetch_assoc($result2);
// Ophalen van commissie per persoon
if($vervoermiddelPrijzen["personenMin"] > $ritAantalPersonen) $fkAantalPersonen = $vervoermiddelPrijzen["personenMin"];
else $fkAantalPersonen = $ritAantalPersonen;
// Commissie van de chauffeur - afronden op 50 cent
$commissieChauffeur = $ritPrijs * ($vervoermiddelPrijzen['commissie'.$fkAantalPersonen]/100);
$commissieChauffeur = round(($commissieChauffeur * 2), 0) / 2;
// Toeslag berekenen.
$ritPrijs = $ritPrijs + (($ritPrijs/100)*$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]);
$ritPrijs = round(($ritPrijs * 2), 0) / 2;
echo "<br>De prijs is $ritPrijs Euro";
}}}
?>
<script type="text/javascript">
var geocoder, location1, location2, gDir;
function initialize() {
geocoder = new GClientGeocoder();
gDir = new GDirections();
GEvent.addListener(gDir, "load", function() {
var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
var km = Math.round(drivingDistanceKilometers + 0.5)
}
document.pricecalculator.distance.value = km;
});
}
</script>
<body onload="initialize()">
<form name="pricecalculator" action="" method="post">
<div>
<input id="postcode" type="text" name="address1" value="1326 NA"/><br />
<input type="hidden" name="address2" value="1118 AX" />
<label for="postcode">Vervoermiddel:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze -</option>
<option value="1" #VMselPA# >Personen auto max. 4 pers.</option>
<option value="2" #VMselB6# >Busje max. 6 pers.</option>
<option value="3" #VMselB8# >Busje max. 8 pers.</option>
</select>
<label for="postcode">Aantal personen:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze - </option>
<option value="1" #NrPers1# >1 passagiers</option>
<option value="2" #NrPers2# >2 passagiers</option>
<option value="3" #NrPers3# >3 passagiers</option>
<option value="4" #NrPers4# >4 passagiers</option>
<option value="5" #NrPers5# >5 passagiers</option>
<option value="6" #NrPers6# >6 passagiers</option>
<option value="7" #NrPers7# >7 passagiers</option>
<option value="8" #NrPers8# >8 passagiers</option>
</select>
<input type="hidden" name="distance" value="" id="distancekm" />
<input name="submit" type="submit" value="Bereken Prijs" />
</div>
</form>
</body>
</html>
session_start();
include ("/home/deb35110/domains/taxi2me.nl/public_html/resources/includes/verbinding.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<link type="text/css" rel="stylesheet" href="style.css" media="screen" />
<script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAgV13-t4t3STpZlalXFAmzxQWUOUdy4en180hY4LdqgARW0NSBBR4VptnbNX5MzDRXExbmWRMpnIwGA" type="text/javascript"></script>
<!-- According to the Google Maps API Terms of Service you are required display a Google map when using the Google Maps API. see: http://code.google.com/apis/maps/terms.html -->
</head>
<body>
<?php
$afstand = $_POST["distance"];
echo 'De afstand is: '.$afstand;
$pkVervoermiddelId = 1;
$ritSoortId = 2;
if($_SERVER["REQUEST_METHOD"] == "POST"){
$pkVervoermiddelId = $_POST["pkVervoermiddelId"];
echo 'Aantal personen is: ' .$pkVervoermiddelId ;
}
if(!empty($_GET['km'])){
//if($_SERVER['REQUEST_METHOD'] == "POST"){
$ritSoortId = 2;
echo "De afstand is $km kilometer";
$result = @mysql_query("SELECT * FROM `vervoermiddelPrijzen` WHERE fkVervoermiddelId = '$pkVervoermiddelId' AND fkRitSoort = '$ritSoortId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
while($gegevens = @mysql_fetch_assoc($result))
{
if ($gegevens["kmVan"] <= $km){
if($gegevens["kmTot"] < $km) $kilometers = $gegevens["kmTot"]-$gegevens["kmVan"];
else $kilometers = (($gegevens["kmVan"]-$km)*(-1))+1;
$ritPrijs += $gegevens["tariefInstap"] + ($gegevens["tariefKm"] * $kilometers);
// Commissie ophalen (Vervoermiddel)
$result2 = @mysql_query("SELECT * FROM `vervoermiddelen` WHERE pkVervoermiddelId = '$pkVervoermiddelId' ") or mysqlerror("Er is een fout opgetreden.", mysql_error());
$vervoermiddelPrijzen = @mysql_fetch_assoc($result2);
// Ophalen van commissie per persoon
if($vervoermiddelPrijzen["personenMin"] > $ritAantalPersonen) $fkAantalPersonen = $vervoermiddelPrijzen["personenMin"];
else $fkAantalPersonen = $ritAantalPersonen;
// Commissie van de chauffeur - afronden op 50 cent
$commissieChauffeur = $ritPrijs * ($vervoermiddelPrijzen['commissie'.$fkAantalPersonen]/100);
$commissieChauffeur = round(($commissieChauffeur * 2), 0) / 2;
// Toeslag berekenen.
$ritPrijs = $ritPrijs + (($ritPrijs/100)*$vervoermiddelPrijzen['toeslag'.$fkAantalPersonen]);
$ritPrijs = round(($ritPrijs * 2), 0) / 2;
echo "<br>De prijs is $ritPrijs Euro";
}}}
?>
<script type="text/javascript">
var geocoder, location1, location2, gDir;
function initialize() {
geocoder = new GClientGeocoder();
gDir = new GDirections();
GEvent.addListener(gDir, "load", function() {
var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
var km = Math.round(drivingDistanceKilometers + 0.5)
}
document.pricecalculator.distance.value = km;
});
}
</script>
<body onload="initialize()">
<form name="pricecalculator" action="" method="post">
<div>
<input id="postcode" type="text" name="address1" value="1326 NA"/><br />
<input type="hidden" name="address2" value="1118 AX" />
<label for="postcode">Vervoermiddel:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze -</option>
<option value="1" #VMselPA# >Personen auto max. 4 pers.</option>
<option value="2" #VMselB6# >Busje max. 6 pers.</option>
<option value="3" #VMselB8# >Busje max. 8 pers.</option>
</select>
<label for="postcode">Aantal personen:</label>
<select name="pkVervoermiddelId">
<option value="0">- Maak een keuze - </option>
<option value="1" #NrPers1# >1 passagiers</option>
<option value="2" #NrPers2# >2 passagiers</option>
<option value="3" #NrPers3# >3 passagiers</option>
<option value="4" #NrPers4# >4 passagiers</option>
<option value="5" #NrPers5# >5 passagiers</option>
<option value="6" #NrPers6# >6 passagiers</option>
<option value="7" #NrPers7# >7 passagiers</option>
<option value="8" #NrPers8# >8 passagiers</option>
</select>
<input type="hidden" name="distance" value="" id="distancekm" />
<input name="submit" type="submit" value="Bereken Prijs" />
</div>
</form>
</body>
</html>
Gewijzigd op 14/11/2010 21:55:35 door Justin S
code tags gebruiken = [.code][./code] zonder puntjes rond je code
Onderaan de functie, dus na document.pricecalculator.distance.value=km;
Krijg je dan output in het dialoogscherm?
Gewijzigd op 14/11/2010 21:57:25 door Justin S
Gr. Hans
Je moet dit eerst oplossen.. Zorgen dat je weer output krijgt van google. Dan kan je pas verder met het verwerken van die data.