Проблема с перенаправлением WordPress с php
У меня есть некоторые пользователи в моем db. Сценарий PHP выбирает пользователей точно, но перенаправление не работает.
Пожалуйста, помогите мне в моем скрипте ниже:
if($sqlquery==1)
{
$_SESSION['email']=$email;
$_SESSION['password']=$password;
wp_redirect( 'https://mcqpage.com/somepage', 301 );
exit;
}
else
{
header("location:http://www.mcqpage.com/index.php");
}
@Nadav В моей error_log отображается следующая ошибка:
[02-May-2017 07:29:06 UTC] PHP Warning: session_start(): Не удается отправить cookie сеанса - уже отправленные заголовки (вывод запущен в /home/mysite/public_html/wp/wp-includes/class.wp- styles.php: 237) в /home/mysite/public_html/wp/wp-content/plugins/insert-php/insert_php.php(47): код eval() 'в строке 2
[02-May-2017 07:29:06 UTC] PHP Warning: session_start(): Не удается отправить ограничитель кеша сеанса - уже отправленные заголовки (вывод запущен в /home/mysite/public_html/wp/wp-includes/class.wp- styles.php: 237) в /home/mysitec/public_html/wp/wp-content/plugins/insert-php/insert_php.php(47): код eval() 'в строке 2
[02-May-2017 07:29:06 UTC] PHP Предупреждение: не удается изменить информацию заголовка - уже отправленные заголовки (вывод запущен в /home/mysitec/public_html/wp/wp-includes/class.wp-styles.php: 237) в /home/mysite/public_html/wp/wp-content/plugins/insert-php/insert_php.php(47): код eval() 'в строке 25
следующий код решил мою проблему
'function register_my_session()
{
if (! session_id())
{
session_start();
}
} 'в function.php
и начать сеанс без каких-либо ошибок, для заголовка я использовал перенаправление java-скрипта, это решило мою проблему
Выполняете ли вы перенаправление после того, как заголовки уже отправлены? Если так, то это не сработает. Убедитесь, что ваш код запущен до отправки заголовков, предпочтительно в качестве части шаблона, который предлагает Wordpress.
Если вы не знаете, где загружается ваш код, я предлагаю вам включить ваш код внутри функции, которая выполняется во время hook_redirect. Например, вы можете добавить в свой файл functions.php тему:
function handle_session_data()
{
//Your code here.
}
add_action( 'template_redirect', 'handle_session_data' );
мои подробности следуют
страница авторизации
<form onsubmit='return formValidator()' action='https://mcqpage.com/connection/' method='post'>
<h2>Enter Your Details</h2><hr/>
<label>Name :</label>
<input type='text' name ='addr1' id='addr' /><br />
<label>Password :</label>
<input type="password" name="password" id="password">
<input type='submit' value='Check Form' />
страница подключения
> [insert_php]
session_start();
if($_POST['addr1']!="" && $_POST['password']!=""){
session_start();
$connec=@mysql_connect("") or
mysql_error();
if (!$connec) {
die('Could not connect: ' . mysql_error());
}
$email=$_POST['addr1'];
//echo"$email";
$password= $_POST['password']);
if ($email=="")
{
echo "Enter User Name.......";
}
else
$result = mysql_query("SELECT * FROM 'database'.'table' WHERE
password='$password' and name='$email'");
$data = mysql_num_rows($result);
if($data==1)
{
$_SESSION['email']=$email;
$_SESSION['password']=$password;
wp_redirect( 'https://mcqpage.com/page', 301 );
exit;
}
else
{
header("location:http://www.mcqpage.com/index.php");
}
}
//connection closed
mysql_close ($connec);}
else{
header("location:http://www.mcqpage.com/index.php");
}
[/insert_php]
пожалуйста, проверьте это, если полезно для u
$location = get_site_url() . "/contact";
wp_redirect( $location, 301 );
exit;