2012-02-13 30 views
0
<?=form_open('register');?> 
      <table> 
       <tr> 
        <td><label for="register_name">Username : </label></td> 
        <td><input type="text" name="register_name" readonly="true" value="<?=$_POST['username']?>"/></td>      
       </tr> 
       <tr> 
        <td><label for="register_email">Email:</label></td> 
        <td><input type="text" name="register_email" readonly="true" value="<?=$_POST['email']?>"/></td>     
       </tr>     
       <tr> 
        <td><label for="register_password">Password:</label></td> 
        <td><input type="password" name="register_password" readonly="true" value="<?=$_POST['password']?>"/></td>     
       </tr>    
       <tr> 
        <td></td> 
        <td><input type="submit" value="Register" onclick="return true;"/></td> 
       </tr> 
       <tr> 
        <td></td> 
        <td>      
         <input type="submit" value="Edit" onclick="window.location.replace('http://localhost/index.php?username='<?=$_POST['email']?>'&email='<?=$_POST['email']?>');return true;"/></td>      
       </tr> 
      </table> 
     <?=form_close()?> 

我在最後的「輸入類型=提交」時出錯了,因爲在我按下按鈕之後,它會繼續進一步操作(註冊)而不是返回到索引頁面。我使用的網址是否有誤? (我願與返回的信息後面的主網頁的GET)表單提交沒有按照我的意願去做

UPDATE

我有一個登記表(主索引頁),其中用戶是伴隨着用戶名和密碼填寫用他的電子郵件地址。在他按下提交之後,他將被引導至確認頁面,在該頁面中還有一個按鈕將他引導回主頁面。確認頁面僅從索引頁面重寫他填充的信息。如果他想改變任何,他可以按EDIT按鈕。一旦他按下它,我希望用戶名和電子郵件地址等信息仍然存在於索引頁上。對於像我這樣的新手來說,這是一個棘手的部分。我想了解你如何處理這個問題。上面的代碼是我沒有碰運氣的嘗試,因爲當我按下任何一個按鈕時它會註冊。

+0

嘗試'返回false;'末,而不是'返回true;'(false將取消提交按鈕的默認操作)。 – nnnnnn 2012-02-13 01:56:23

+0

是否要將頁面提交到「註冊」或「索引」?現在你告訴它做衝突的事情。如果你想發佈索引,那麼索引應該是你的目標。請注意,它幾乎看起來像是將服務器端代碼與客戶端代碼混淆在一起,因爲在用戶看到表單之前將會評估PHP(如果這是一個註冊表單,這是沒有意義的,還沒有這些數據)。 – Kitsune 2012-02-13 01:57:04

+0

@nnnnnn'preventDefault()'應該比'return false'更受歡迎,因爲後者可能會產生意想不到的後果(如多個事件處理程序)。 – Kitsune 2012-02-13 02:02:09

回答

1

我不知道爲什麼你使用的是在這裏提交按鈕,如果你不想提交頁面。

我看到兩個選項,使

<input type="button" value="Edit" onclick="window.location.replace('http://localhost/index.php?username='<?=$_POST['email']?>'&email='<?=$_POST['email']?>');return true;"/> 

或在返回false提交行動

<input type="submit" value="Edit" onclick="window.location.replace('http://localhost/index.php?username='<?=$_POST['email']?>'&email='<?=$_POST['email']?>');return false;"/>