2011-12-31 150 views
2

嗨我想創建一個表單,部分按頁面上的表單預先填充。然後將這些信息發佈到這個新頁面,然後將該頁面填充到該頁面上的表單中以準備提交到數據庫。使用URL填充表單 - 多種輸入類型

我不是一個開發人員,所以我在這裏我深入一點,但是這是我這麼遠..

<?php 
    $amount = $_GET['text-386']; 
    $covermultiple = $_GET['radio-30']; 
    $coverdobd = $_GET['d-o-b-d']; 
    $coverdobm = $_GET['d-o-b-m']; 
    $coverdoby = $_GET['d-o-b-y']; 
?> 

<script type="text/javascript"> 
    document.getElementById('text-386').value = "<?=$amount ?>"; 
    document.getElementByName('radio-30').checked = "checked"; 
    document.getElementById('d-o-b-d').value = "<?=$coverdobd ?>"; 
    document.getElementById('d-o-b-m').value = "<?=$coverdobm ?>"; 
    document.getElementById('d-o-b-y').value = "<?=$coverdoby ?>"; 
</script> 

我得到的值從URL中好的,可以在頁面上回顯這些,我甚至設法讓文字-386出現在正確的位置..所以這一下!問題是其他元素是一個帶有兩個選項(radio-30)的單選按鈕和一個3個選擇框,其中包含一個人d-o-b的日期,月份和年份。這兩位正在填充。

簡而言之

所以..

如何我可以使用JavaScript(如果這是正確的方式)沿着PHP來填充在URL中使用這個信息表上的廣播和選擇標籤?儘可能以直截了當的方式?

的網址,如果有幫助是...

http://localhost/datacapture/form-page/radio-30=Just+for+me&text-386=%C2%A340%2C000&d-o-b-d=11&d-o-b-m=05&d-o-b-y=1977

那顯然在本地構建我使用,使URL不會爲你工作。我可以看到什麼時候使用廣播/選擇等Google搜索幫助發佈信息,但我想要的是相反的,你如何從網址填充這些信息?

任何幫助將是一個救生員

回答

0

我只會使用一個if語句。

if($covermultiple == "Just for me") { 
    // Echo the field here 
    echo "<input type='radio' name='radio-30' value='Just for me' checked />"; 
} 

else { 
    // Check for the next case 
} 

把這個塊放到你想要單選按鈕的地方。

我覺得這樣的事情可以正常工作。除非你真的想使用它,否則我不認爲你真的需要javascript。

0

我不是100%我有一個答案,但我不能在任何地方找到評論,所以我會在這裏發表評論。

  1. 你不能從Javascript訪問PHP變量。 PHP在服務器上運行,Javascript在用戶瀏覽器內部運行。
  2. Javascript不能得到像PHP這樣的$ _GET和$ _POST變量。

現在您可以做的就是使用JavaScript,您可以獲取包含當前URL的document.location字符串。您可以將該網址製作成部分。要做到這一點,使用此功能:

​​

現在你可以使用$ _GET [ '乏']讓你的URL瓦爾。

然後你不使用PHP來回顯變量內容,你馬上準備你的URL,以便它包含你想要插入到表單中的變量。

所以,你做這樣的事情:

<script type="text/javascript"> 
    document.getElementById('text-386').value = $_GET['urlVar']; 
    document.getElementByName('radio-30').checked = "checked"; 
    document.getElementById('d-o-b-d').value = $_GET['urlVar']; 
    document.getElementById('d-o-b-m').value = $_GET['urlVar']; 
    document.getElementById('d-o-b-y').value = $_GET['urlVar']; 
</script> 

因此,大家可以看到,JavaScript邁出變量從URL,利用函數$ _GET你寫它dosent需要PHP。你可以使用PHP來生成你需要的URL,所以它們包含你可以使用$ _GET javascript函數獲得的變量。

希望這回答你的問題。

+0

嘿,謝謝我得到的原則,但是當我已經添加到我的代碼它似乎並沒有實現。我可以提醒這些值,但這個JavaScript似乎並沒有實現。對不起,如果我錯過了一些很明顯的東西 – 2012-01-04 17:53:04