2015-01-31 6 views
0

У меня есть кнопка, позволяющая аутентификацию из твиттера, все работает правильно, но единственная проблема заключается в том, что я хочу открыть страницу login-twitter.php на другой вкладке, я попытался использовать окно .open вместо заголовка, но это не сработало. может кто-нибудь сказать, как это может быть сделанооткрыть ссылку на другой вкладке

<?php 
ob_start(); 
session_start(); 
if (isset($_SESSION['id'])) { 
    header("location: u_tasks.php"); 
} 

if (array_key_exists("login", $_GET)) 
    { 
     $oauth_provider = $_GET['oauth_provider']; 
      if ($oauth_provider == 'twitter') 
       { 
        header("Location: login-twitter.php"); 
       } 
    } 
?> 
<!DOCTYPE html> 
<html lang="en"> 
<head></head> 
<body> 
<? 
    echo "<div class='col-md-9'>"; 
     echo "<a href='?login&oauth_provider=twitter'><button style='background-color:#1dcaff; border-color:#1dcaff; color:white; height:30px; border-radius:10px;'>Go To Twitter</button></a>"; 
    echo "</div>"; 
?> 
</body> 
</html> 
+0

Просто предложение: ваш код, вероятно, будет работать лучше, если вместо перенаправления вы просто выполнили запрос GET или POST и сделали что-то на основе возврата. – Will

ответ

0

я думаю, что это полезно для вас.

<a href='?login&oauth_provider=twitter' target="_blank"><button style='background-color:#1dcaff; border-color:#1dcaff; color:white; height:30px; border-radius:10px;'>Go To Twitter</button></a> 
0

с помощью header("Location:..."); может сделать только переадресовывает. Насколько я знаю, вам нужно будет сделать некоторое количество javascript или html для достижения своей цели. Другая проблема заключается в том, что браузеру нравится блокировать автоматически открытые всплывающие окна, потому что 99% автоматических всплывающих окон используются только спамерами. Тем не менее, я покажу вам способ, чтобы попытаться сделать это в любом случае:

<?php 
$usingTwitter=0; 
ob_start(); 
session_start(); 
if (isset($_SESSION['id'])) { 
    header("location: u_tasks.php"); 
} 

if (array_key_exists("login", $_GET)) 
    { 
     $oauth_provider = $_GET['oauth_provider']; 
      if ($oauth_provider == 'twitter') 
       { 
        $usingTwitter=1; 
       } 
    } 
?> 
<!DOCTYPE html> 
<html lang="en"> 
<head> 
<script> 
    <?php 
     if($usingTwitter){ 
      echo "window.open('login-twitter.php');"; 
     } 
    ?> 
<script> 
</head> 
<body> 
<? 
    echo "<div class='col-md-9'>"; 
     echo "<a href='?login&oauth_provider=twitter'><button style='background-color:#1dcaff; border-color:#1dcaff; color:white; height:30px; border-radius:10px;'>Go To Twitter</button></a>"; 
    echo "</div>"; 
?> 
</body> 
</html> 

Убедитесь, что вы отключили всплывающие окна блокировки в вашем браузере, чтобы это работало, хотя!

Смежные вопросы