2011-08-14 20 views
0

我有一個小型項目,用於在沒有服務器端腳本的裸機網絡解決方案帳戶上託管的頁面上記錄某些表單輸入。我一直在試圖研究解決方案,似乎做到這一點的唯一方法可能是在主機上使用輔助帳戶,該主機上有php並通過ajax提交給它(我不希望頁面刷新,假設這是必要的)。我以前從未使用ajax,並且此項目很快將到期,因此我正在尋找不需要很大學習曲線的示例或解決方案。任何人都可以建議任何資源在沒有php/asp的服務器上錄製表單輸入

+1

如果您無法訪問任何類型的服務器端腳本語言,您希望如何將數據保存到服務器?即使你有另一臺允許你的服務器,你仍然只能將數據保存到該服務器,除非你可以通過FTP將文件上傳到主服務器。除此之外,沒有一些服務器端腳本語言後端,這個任務是不可能的。 –

回答

0

如果您不希望頁面刷新,唯一的方法是將表單發佈爲iframe中的0x0像素,因爲ajax不支持跨站點。

<html> 
    <head></head> 
    <body> 
    <form action="http://www.example.org/otherHost.php" .... target="myIframe"> 
     ..... 
    </form> 
    <iframe src="someblankdocument.html" name="myIframe" id="myIframe" width="0" height="0" frameborder="0"></iframe> 
</html> 
+0

嘿,我從來不知道那個伎倆,它效果很好,謝謝! –

0
  1. 必須使用服務器端處理存儲來自用戶的表單結果。
  2. 不需要需要使用ajax將表單提交到另一個帳戶或位置。

例如例如,如果你有兩個帳戶foo.example.combar.example.com

foo.example.com/index.html你可以有一個表單,提交給bar.example.com

<form action='bar.example.com/saveForm.php' method='post'> 
    ... 
</form> 

這裏是一個非常簡單的saveForm.php是保存結果到bar.example.org/data.csv,而無需驗證輸入:

<?php 

$fp = fopen('data.csv', 'a'); 
fputcsv($fp, $_POST); 
fclose($fp); 

// Tell user then you got their data - normally should do error checking first 
echo "Data saved. Thank you!"; 

?> 
+0

謝謝,我最終不得不稍微修改它,因爲我只有一個表單域,所以它沒有插入逗號,但是感謝您的基本和非常簡單的PHP入門! –

相關問題