2012-05-27 149 views
0

我有這個代碼它的工作用戶登錄成功,但我也需要這樣做,一旦登錄他被重定向到另一個頁面我不是很熟悉php,我看過在這裏和谷歌和重定向提交時,我看到你改變了動作=「目標網址」,但它已經有了它的PHP代碼,如果我改變它不起作用。 我很感激任何和所有幫助。當表單提交按鈕被點擊時重定向

<div id="apDiv4"> 
<form name="login-form" id="sidebar-login-form" class="standard-form" action=" <?php echo site_url('wp-login.php', 'login_post') ?>" method="post"> 
    <table width="100%" border="0" cellspacing="0" cellpadding="0"> 
    <tr> 
     <td><table width="100%" border="0" cellspacing="0" cellpadding="5"> 
     <tr> 
      <td> 
     <label><?php _e('Username', 'buddypress') ?> 
     <input type="text" name="log" id="sidebar-user-login" class="input" value="<?php echo esc_attr(stripslashes($user_login)); ?>" /></label> 

      </td> 
      <td> 
     <label><?php _e('Password', 'buddypress') ?> 
     <input type="password" name="pwd" id="sidebar-user-pass" class="input" value="" /></label> 

      </td>   
     </tr> 
     <tr><td> 
     <p class="forgetmenot"><label><input name="rememberme" type="checkbox" id="sidebar-rememberme" value="forever" /> <?php _e('Remember Me', 'buddypress') ?></label></p></td> 
       <td> 
       <?php do_action('bp_sidebar_login_form') ?> 
       <input type="image" value=<img src="http://anime.edgardoroldanonline.com/wp-content/themes/buddyboss-child-fixed-navbar/images/button-letmein.png" width="127" height="26" name="wp-submit" id="sidebar-wp-submit" tabindex="100" /> 
       <input type="hidden" name="testcookie" value="1" /> 

?> 

       </td> 
</td>  
     </tr> 
     </table></td> 
    </tr> 
    </table> 
      </form> 
</div> 

回答

1

作爲它的wordpress你和你一起工作應該在你的表單中使用一個隱藏字段(redirect_to)。它的一個特點。

上的570線
<form name="login-form" id="sidebar-login-form" class="stand... 
    <input type="hidden" name="redirect_to" value="http://redirect.to.com"> 

WP-login.php中登錄後,將處理重定向值:

$redirect_to = apply_filters('login_redirect', $redirect_to, isset($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : '', $user); 


旁註:您也可以直接調用重定向功能與 wp_redirect()

<?php 
wp_redirect($location, $status); 
exit; 
?> 
+0

就像一個魅力頂部一方沒有給我一個錯誤說它已經被pluggable.php調用,但頂級的完美謝謝勞倫斯:) –

0

在PHP文件,你正在處理,你可以使用頭定位交易:

<?php 

$host = $_SERVER['HTTP_HOST']; 
$uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\'); 
$extra = 'some_page.php'; 
header("Location: http://$host$uri/$extra"); 

?> 
+0

關於[header](http://www.php.net/manual/en/function.header.php):「HTTP/1.1要求一個絕對URI作爲»Location的參數:包括scheme,hostname和絕對路徑,但是一些客戶端接受相對URI。「 – Ahatius

0

你會想在你的PHP腳本使用header("Location: /some/page.php")呼叫處理形式值。

此重定向必須在服務器端完成,因爲您的服務器首先需要實際接收數據,因此您無法更改操作字段。

+0

如上所述,[header](http://www.php.net/manual/en/function.header.php)需要絕對URL:「HTTP/1.1需要一個絕對URI作爲»Location的參數:包括方案,主機名和絕對路徑,但有些客戶端接受相對URI。「 – Ahatius

+0

技術上,是的。然而,絕大多數客戶對於這條道路都沒有問題。 – Amber

相關問題