2013-01-22 16 views
0

讓我們說,我有以下形式:假HTML URL地址時,鼠標在形式

<form method="post" action="" autocomplete="off"><input name="checking2" type="submit" value="Name" class="ssd"></form> 

當用戶提交這個PHP代碼發生形式:

if(isset($_POST['checking2'])){ 
$xmla = new SimpleXMLElement('passwords/' . views . '.xml', 0, true); 
$plus = $xmla->goodx; 
$result = $plus + 1; 
$xmla->goodx = $result; 
$xmla->asXML('passwords/' . views . '.xml'); 
header('Location: http://google.com') ; 
} 

而下面的CSS來設計表單:代碼:

.ssd { 
border: none; 
background-color: transparent; 
padding: 0; 
cursor: pointer; 
font-size:89%; 
display:inline; 
text-decoration: underline; 
color: #00c; 
} 

現在,每當用戶單擊表單時,他將被重定向到r eturn到谷歌。每次有人提交表單時,PHP代碼都應該爲xml文件的值添加+1(它有效)。我的問題是,只要有人將鼠標放在表單的值上,他看到的URL就是他當前所在頁面的URL地址,而不是他實際上將重定向到的URL - Google。我試圖僞造URL地址,因此他不會看到當前頁面的URL地址(即action =「」),而會看到google的URL地址。不,不建議只將google的URL地址放在「action =」中,因爲這樣PHP的數據由於某種原因沒有正確更新。任何幫助將不勝感激。

回答

0

萬一我得到你的權利,你想改變形式動作屬性,不是嗎?

如果是的話,用這個小javascript代碼:

<script> 
function fake_action(){ 
    document.forms["myform"].action="http://example.com"; 
    document.forms["myform"].submit(); 
} 
</script> 
<form id="myform" action="http://google.com"> 
    <input type="text" placeholder="placehold.it"/> 
    <input type="button" value="send" onclick="fake_action();"/> 
</form> 

只是一個快速explenation:我已經取代了標準按鈕提交按鈕並指定了fake_action();作爲它的onclick事件處理函數。 fake_action函數只是改變表單的動作,然後提交。所以你可以做你的東西沒有任何問題。

(你應該只檢查是否有GET /在頁面加載POST參數,並最終送他們到第二頁你收到的第一個之後他們;))

+1

這不是我所試圖做的。我更新了我的帖子,使其更清晰。 – user1938653

+0

其他人得到答案? – user1938653

+0

給我一點,我昨天一直在編碼22個小時,自那時以來沒有睡過多少,目前我正在爲大學atm做一些SQL的工作。我會在大約一兩個小時內更新我的解決方案! 編輯:我現在再次檢查您的更新的描述,它應該實際上仍然與我的代碼一起工作。如果您使用按鈕而不是提交按鈕,則可以使用JavaScript獲取數據,對其進行處理,然後將用戶重定向至Google。 –