当我加载使用javascript的地图api时,我无法使用php代码从我的phpMyAdmin数据库中检索。
它只加载地图javascript。我有一些数据存储在我的数据库中。任何帮助表示赞赏。谢谢!
最终结果必须是(我的数据库数据和地图api)能够同时加载到屏幕上。
<!DOCTYPE html>
<html>
<body>
<table border="1">
<tr>
<th>Routes Available</th>
<th>Map Direction</th>
<th>Preferred Routes</th>
</tr>
<tr>
<td><div id="sidebar">
<form name="form1" method="get" action="" onSubmit = "getDirections( this.from.value, this.to.value, this.mode.value ); return false;">
<p>
<label style="width:50px;display:inline-block;">From:</label>
<input type="text" size="34" name="from" value=""/>
</p>
<p>
<label style="width:50px;display:inline-block;">To:</label>
<input type="text" size="34" name="to" value=""/>
</p>
<p>
<label style="width:50px;display:inline-block;">Via:</label>
<select disabled name="mode" disabled>
<option value="c">Car</option>
</select>
<input type="submit" name="submit" value="Get Directions" style="margin-left:25px"/>
</p>
</form>
<?php
//PHP CODE STARTS HERE
if(isset($_GET['submit'])){
$db_name="carpool";
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db($db_name, $con);
$from=mysql_real_escape_string($_GET['from']);
$to=mysql_real_escape_string($_GET['to']);
$query_for_result=mysql_query("
SELECT *
FROM routedetails
WHERE `from` LIKE '%".$from."%'
AND `to` LIKE '%".$to."%'
");
echo "<table border=1 width=510>";
echo "<tr>";
echo "<td>";
echo "<h2>From: Search Results</h2><ol>";
$data_fetch=mysql_fetch_assoc($query_for_result);
while($data_fetch=mysql_fetch_assoc($query_for_result))
{
echo "<li>";
foreach($data_fetch as $row => $value){
echo "$row - $value<br />";
}
echo "</li><hr/>";
}
echo "</tr>";
echo "</td>";
echo "</table>";
echo "</ol>";
mysql_close();
}
?>
<div></td>
<td><div id="map" style="width:600px;height:600px;margin-right:20px;float:left;"></div></td>
<td><div id="panel"></div>
<script type="text/javascript" src="http://gothere.sg/jsapi?sensor=false"></script>
<script type="text/javascript">
gothere.load("maps");
//var directions;
function initialize() {
if (GBrowserIsCompatible()) {
// Create the Gothere map object.
var map = new GMap2(document.getElementById("map"));
// Set the center of the map.
map.setCenter(new GLatLng(1.362083, 103.819836), 11);
// Add zoom controls on the top left of the map.
map.addControl(new GSmallMapControl());
// Add a scale bar at the bottom left of the map.
map.addControl(new GScaleControl());
// directions.load("from: Changi Airport to: Orchard Road");
}
directions = new GDirections(map, document.getElementById("panel"));
}
function getDirections(from, to, mode) {
var travelMode;
directions.load("from: " + from + " to: " + to, {travelMode: travelMode});
}
gothere.setOnLoadCallback(initialize);
</script></td>
</tr>
</table>
</body>
</html>
答案 0 :(得分:1)
您的html代码无效,您在单元格<ol>
内打开了有序列表<td><h2>...</h2><ol>
,但在表格</table></ol>
之外将其关闭,并且您正在关闭行后的单元格{ {1}}。您的输出代码目前看起来像这样 -
</tr></td>
此外,请尝试删除<table border=1 width=510>
<tr>
<td>
<h2>From: Search Results</h2>
<ol>
<li>$row - $value<br /></li>
<hr/>
</tr>
</td>
</table>
</ol>
,因为它与下一行$data_fetch=mysql_fetch_assoc($query_for_result);