2012-07-23 51 views
1

我有一個寄存器形式,我使用腳本來變換一個位置,以它的緯度和經度,我使用lorenzsell /地理編碼-自動填充(HTTPS: //github.com/lorenzsell/Geocoded-Autocomplete/blob/master/README)形式輸入字段,那並不傳遞給寄存器形式

它的工作原理就像一個魅力,如果我填寫的地址,然後在我的表單的輸入域與ID filter_lat和filter_lng是填充正確的座標。

,所以我希望,如果我發這位於register.php一個登記表, ,它會看到這些座標。但它不..一切的定義,只有filter_lat和filter_lng的arent。儘管這些是自動填充的,這是否必須對它做些什麼?

<form method="POST" action="register.php"> 
            <table> 
            <tr> 
             <td> 
              Email: <br/><input type="email" name="email" class="focussed_input" size="15" /><br> 
             </td> 
             <td> 
              Password: <br/><input type="password" name="password" class="focussed_input" size="15" /><br /> 
             </td> 
            </tr> 
            <tr> 
             <td> 
              Name:<br/><input type="text" name="name" class="focussed_input" size="15" /><br /> 
             </td> 
             <td> 
              Age: <br/><input type="text" name="age" class="focussed_input" size="15" /><br /> 
             </td> 
            </tr> 
            <tr> 
             <td> 
             Address:<br/><input type=text id="mapaddress" class="focussed_input" /><br/> 
             </td> 
             <td> 
              <input type="text" id="filter_lat" style="" />                             
              <input type="text" id="filter_lng" style="" /> 
              <input type="submit" value="I'm ready!" class="button_inverse" style="padding-left: 23px; padding-right:23px; margin-top:11px;" /> 
             </td> 
            </tr> 
           </table> 

           </form> 

是這樣的形式, 和register.php代碼:

<?php 
echo $_POST['filter_lat']; 
echo "include"; 
include("config.php"); 
echo "test"; 
if(isset($_POST["email"])&& isset($_POST["password"]) && isset($_POST["name"]) && isset($_POST["age"])){ 
    echo"na isset"; 
    $email = htmlentities(mysql_real_escape_string($_POST['email'])); 
       if(mysql_num_rows(mysql_query("SELECT * FROM users WHERE email ='$email';")) > 0){ 
        echo "email already used"; 

       } 
       else{ 
        $password = hash('sha512', $salt . mysql_real_escape_string($_POST['password'])); 
        $name = htmlentities(mysql_real_escape_string($_POST['name'])); 
        $age = htmlentities(mysql_real_escape_string($_POST['age'])); 
        $lat = htmlentities(mysql_real_escape_string($_POST['filter_lat'])); 
        $lng = htmlentities(mysql_real_escape_string($_POST['filter_lng'])); 
        $id = ''; 

        mysql_query("INSERT INTO users (id, email, password, name, age, lat, lng, type) VALUES ('$id', '$email', '$password', '$name', '$age', '$lat', '$lng', '0');") or die(mysql_error()); 
        echo "Account creation successful!"; 
       } 
} 


?> 

任何人之前使用lorenzsell的autofiller?或有人知道如何解決這個問題?

在此先感謝!

回答

1

變化filter_lat和filter_lng命名的ID。它應該是這個樣子 -

<input type="text" name="filter_lat" style="" />                             
<input type="text" name="filter_lng" style="" /> 

你在服務器端獲取與$ _ POST數據,但你不能沒有名字檢索數據。所以基本上,你試圖檢索不存在的數據filter_lat。

屬性ID大多爲精神疾病CSS和JavaScript/jQuery的

+0

非常感謝隊友 – user1543935 2012-07-23 14:21:01

+0

歡迎你)! – y2ok 2012-07-23 14:21:13

0

的問題是他們沒有定義的 「name」 屬性:

<input type="text" id="filter_lat" style="" />                             
<input type="text" id="filter_lng" style="" /> 

變化:

<input type="text" id="filter_lat" style="" name="filter_lat"/>                             
<input type="text" id="filter_lng" style="" name="filter_lng"/> 
+0

謝謝指點先生 – user1543935 2012-07-23 14:21:09