admin管理员组文章数量:1415139
I have spent more than 2 months trying to solve this coding problem. First of all I know JavaScript runs on the client side and PHP runs on server.
I have two PHP pages (index23.php and index24.php), both use HTML/PHP and JS.
I'm using the HTML5 geolocation API:
<body onload="getLocation()">
<p id="demo"></p>
<script>
var x = document.getElementById("demo");
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
else
{
x.innerHTML="Geolocation is not supported by this browser.";
}
}
function showPosition(position)
{
x.innerHTML= "+" + position.coords.latitude + "+" + position.coords.longitude;
}
</script>
I can see the geocode values on my current PHP page (index23.php). Then I click an HTML form button and the browser goes to another page (index24.php).
How can I pass the JavaScript values on the first PHP page to the second PHP page using the submit button on the form?
This is my form:
<form id="searchbox" action="index24.php" method="get">
<input name="q" type="text" placeholder="Type here"/>
<input id="submit" type="submit" value="Search"></form>
I have spent more than 2 months trying to solve this coding problem. First of all I know JavaScript runs on the client side and PHP runs on server.
I have two PHP pages (index23.php and index24.php), both use HTML/PHP and JS.
I'm using the HTML5 geolocation API:
<body onload="getLocation()">
<p id="demo"></p>
<script>
var x = document.getElementById("demo");
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
else
{
x.innerHTML="Geolocation is not supported by this browser.";
}
}
function showPosition(position)
{
x.innerHTML= "+" + position.coords.latitude + "+" + position.coords.longitude;
}
</script>
I can see the geocode values on my current PHP page (index23.php). Then I click an HTML form button and the browser goes to another page (index24.php).
How can I pass the JavaScript values on the first PHP page to the second PHP page using the submit button on the form?
This is my form:
<form id="searchbox" action="index24.php" method="get">
<input name="q" type="text" placeholder="Type here"/>
<input id="submit" type="submit" value="Search"></form>
Share
Improve this question
edited Jan 2, 2013 at 8:09
j0k
22.8k28 gold badges81 silver badges90 bronze badges
asked Dec 31, 2012 at 16:37
Adrian DiazAdrian Diaz
271 gold badge2 silver badges6 bronze badges
0
3 Answers
Reset to default 6what you need to do is make a input type hidden and send value through it
<input name="bla" type="hidden" value="blabla">
also html is not server side .. only php is. i hope image below explain
image source
index23.php:
<html>
<head>
<script type="text/javascript">
function getLocation(){
var x = document.getElementById("demo");
if (navigator.geolocation){
navigator.geolocation.getCurrentPosition(showPosition);
}else{
x.innerHTML="Geolocation is not supported by this browser.";
}
}
function showPosition(position){
var x = document.getElementById("demo"),latitude=document.getElementById("latitude"),longitude=document.getElementById("longitude");
x.innerHTML="+" + position.coords.latitude + "+" + position.coords.longitude;
latitude.value = position.coords.latitude;
longitude.value = position.coords.longitude;
}
</script>
</head>
<body onload="getLocation()">
<p id="demo"></p>
<form id="searchbox" action="index24.php" method="get">
<input name="q" type="text" placeholder="Type here"/>
<input name="latitude" id="latitude" type="hidden">
<input name="longitude" id="longitude" type="hidden">
<input id="submit" type="submit" value="Search"></form>
</body></html>
index24.php
$latitude = $_GET['latitude'];
$longitude = $_GET['longitude'];
You can add the values to the form dynamically when you get the coordinates.
<form id="searchbox" action="index24.php" method="get">
<input name="q" type="text" placeholder="Type here"/>
<input id="submit" type="submit" value="Search">
<input name="latitude" type="hidden" id="latitude" value="" />
<input name="longitude" type="hidden" id="longitude" value="" />
</form>
<script>
var x=document.getElementById("demo");
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
else{x.innerHTML="Geolocation is not supported by this browser.";}
}
function showPosition(position)
{
document.getElementById('latitude').value = position.coords.latitude;
document.getElementById('longitude').value = position.coords.longitude;
x.innerHTML="+" + position.coords.latitude + "+" + position.coords.longitude;
}
</script>
本文标签: How can I pass JavaScript values to another PHP page using an HTML formStack Overflow
版权声明:本文标题:How can I pass JavaScript values to another PHP page using an HTML form? - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1745228339a2648712.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论