如何在JS和PHP中获取隐藏字段值

时间:2017-06-23 09:15:15

标签: javascript php html5

我有一个表格,用PHP向我发送一些数据。我想在PHP请求中添加纬度和经度。我的老师告诉我把我的脚本放入一个隐藏的输入中,以获得" adress"并在PHP请求期间将其更改为纬度和经度(使用我已经完成的脚本)。 我不知道如何做到这一点,所以如果有人可以帮助我或解释我如何,它会帮助我很多。 感谢

<div id="content">
  <form id="theForm" method="post" action="index.php" enctype="multipart/form-data">
  <h1>Déposez votre image!</h1>
    <div>
    <!--subname-->
      <input type="text" name="subname" id="input-text" placeholder="Titre de la photo" required>
    </div>
    <div>
    <!--adress-->
      <input type="text" name="adress" id="input-text" placeholder="Adresse" required>
    </div>
    <div>
    <!--image-->
      <input type="file" name="image" required>
    </div>
    <div>
    <!--about-->
      <textarea name="about" cols="40" rows="4" placeholder="Description de l'image" required></textarea>
    </div>
      <input type="submit" name="upload" value="Upload Image">
    </form>
  </div>
<script>
            var getLocation = function (address) {
                var geocoder = new google.maps.Geocoder();
                geocoder.geocode({
                    'address': address
                }, function (results, status) {

                    if (status == google.maps.GeocoderStatus.OK) {
                        var latitude = results[0].geometry.location.lat();
                        var longitude = results[0].geometry.location.lng();
                        console.log(latitude, longitude);
                    }
                });
            }
      getLocation('');
</script>

1 个答案:

答案 0 :(得分:0)

使用inputstype=hidden内的lat和lon创建2 <form>,如下所示:

<input type="hidden" id="lat" value="" />
<input type="hidden" id="lon" value="" />

在JS中为这些隐藏的lat lon输入赋值,如下所示:

var latitude = results[0].geometry.location.lat();
var longitude = results[0].geometry.location.lng();

document.getElementById('lat').value = latitude;
document.getElementById('lon').value = longitude;

除此之外,还要修改HTML。不能有2个具有相同ID的元素。您已将id="input-text"用于2个输入字段。 ID属性应该是唯一的。您可以将其分别更改为id="subname"id="address"