php mysql和javascript加载冲突

时间:2013-05-18 06:59:16

标签: php javascript mysql map conflict

当我加载使用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>

1 个答案:

答案 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);

重复