1

ユーザーがデータベースから最初のポイントの都市名を選択し、次に2番目のポイントの都市名を選択して計算ボタンを送信できるフォームがあります

村のテーブルには次が含まれます。

  • ID
  • 村名
  • 経度
  • 緯度
  • 地区ID

私は自分のコードでこれを行いましたが、何も表示されず、var_dumpが null を表示します

誰でも私を助けることができますか?????

map.php

    <?php 
        if(isset($_POST['calculate']))
        {
            $pt1 = $_POST['pt1'];
            $pt2 = $_POST['pt2'];

            $sql = mysql_query("SELECT longitude, lattitude FROM village WHERE id = '$pt1' AND id = '$pt2'")or die(mysql_error());
            $num_row = mysql_num_rows($sql);
            if($num_row > 0)
            {
                while($row = mysql_fetch_array($sql))
                {
                    $lon_s = $row['longitude'];
                    $lon_e = $row['longitude'];
                    $lat_s = $row['lattitude'];
                    $lat_e = $row['lattitude'];

                    var_dump($lon_e);
                    var_dump($lon_s);
                    var_dump($lat_e);
                    var_dump($lat_s);

                    $R = 6371; //km
                    $A = pow(sin(($lat_e - $lat_s)/2), 2) + cos($lat_s) * cos($lat_e) * pow(sin(($lon_e - $lon_s)/2) , 2);
                    $C = 2 * atan2(sqrt($A), sqrt(1 - $A));
                    $D = $R * $C;

           echo $D;

                }
            }
        }

HTMLコード

<table width="30%" border="3" align="right">
                <form action="map.php" method="post">
                  <tr>
                    <td width="37%"> Location one: </td>
                    <td width="63%"><select id="location1" name="pt1">
                      <?php echo $opt->Showlocation() ?>
                      </select>
                      <br /></td>
                  </tr>
                  <tr>
                    <td>Location two:</td>
                    <td><select id="location2" name="pt2">
                      <option value="0">choose...</option>
                      </select></td>
                  </tr>
                  <tr>
                    <td>&nbsp;</td>
                    <td><input type="submit" name="calculate" value="Calculate Distance" /></td>
                  </tr>
                </form>
              </table>
4

1 に答える 1

1

その理由はWHERE id = '$pt1' AND id = '$pt2'

あなたは1を持っている必要がありますWHERE clause

WHERE id = '$pt1'
于 2013-05-14T08:12:22.563 に答える