Передача параметра из строки URL в перенаправлении Header() на другую страницу в PHP
Я хочу передать данные строки URL в dashboard.php из login.php, здесь у меня есть только авторизация при входе, тогда как данные, присутствующие в URL, переносятся из формы homepage.php для входа в систему через строку URL, я хочу перенести это строка на приборной панели
Код, который перенаправляется из dashboard.php для сеанса входа в систему:
<?php
if(!$_SESSION["UserName"])
{
//Do not show protected data, redirect to login...
$FullName = $_REQUEST["name_"];
$Subject = $_REQUEST["subject_"];
$Phone = $_REQUEST["phone_"];
$Email = $_REQUEST["email_"];
$Message = $_REQUEST["message_"];
header("Location: login.php?name_=$FullName&subject_=$Subject&phone_=$Phone&email_=$Email&message_=$Message");
}
?>
Строка URL отображается в login.php после перенаправления:
http://localhost/youngants/login.php?name_=Sharayu%20Bhave&subject_=hello&phone_=9876543210&email_=bhave.sharayu@gmail.com&message_=hh
После того, как пользователь входит в систему и перенаправляет на dashbord.php, я получаю пустую строку URL и данные не отображаются, см. Ниже:-
http://localhost/youngants/dashboard.php?name_=&subject_=&phone_=&email_=&message_=
Мой код входа, где я снова передаю тот же URL через header(), см. Ниже:-
if(isset($_POST['login']))
{
$username=$_POST['Username'];
$user_pass=$_POST['password'];
$encrypt_pass = md5($user_pass);
$check_user="select * from tbl_logindetails WHERE UserName='".$username."' AND Password='".$encrypt_pass."'";
$run=mysqli_query($connection,$check_user);
if(mysqli_num_rows($run))
{
//echo "<script>window.open('www.google.com','_self')</script>";
header("Location: dashboard.php?name_=$FullName&subject_=$Subject&phone_=$Phone&email_=$Email&message_=$Message");
$_SESSION['UserName']= $username; //here session is used and value of $user_email store in $_SESSION.
}
else
{
echo "<script>alert( 'Error in Registering Useer, Please try again later' )</script>";
}
}
Моя HTML-форма, из которой я беру данные:-
<form class="form ajax-contact-form" method="" action="dashboard.php">
<div class="alert alert-success hidden" id="contact-success">
<span class="glyphicon glyphicon-ok "></span>
<strong>Success!</strong> Thank you for your message.
</div>
<div class="alert alert-danger hidden" id="contact-error">
<span class="glyphicon glyphicon-remove "></span>
<strong>Error!</strong> Oops, something went wrong.
</div>
<div class="row col-p10">
<div class="col-sm-6">
<label class="mb10">
<input type="text" name="name_" id="name_" required class="form-control" placeholder=" Full Name * ">
</label>
</div>
<div class="col-sm-6">
<label class="mb10">
<input type="text" name="subject_" id="subject_" required class="form-control" placeholder=" Subject *">
</label>
</div>
</div>
<div class="row col-p10">
<div class="col-sm-6">
<label class="mb10">
<input type="text" name="phone_" id="phone_" class="form-control" placeholder=" Phone">
</label>
</div>
<div class="col-sm-6">
<label class="mb10">
<input type="email" name="email_" id="email_" required class="form-control" placeholder=" Email Address *">
</label>
</div>
</div>
<label>
<textarea name="message_" id="message_" cols="30" rows="10" required class="form-control" placeholder=" Message *"></textarea>
</label>
<div class="mb40"></div>
<div class="clearfix">
<!-- Enter your google site key here for captcha -->
<div class="pull-right xs-pull-left xs-box">
</div>
<div class="pull-left">
<button type="submit" class="btn btn-icon btn-e" value="submit" name="submit"><i class="icon icon_mail_alt"></i> Sumbit</button>
</div>
</div>
</form>
Я хочу взять приведенный выше URL из login.php обратно в dashboard.php и отобразить эти данные там на dashboard.php. Обратите внимание, у меня есть только идентификатор пользователя, передающий auth при входе в систему, где URL-ссылка переносит данные из homepage.php.
1 ответ
При входе в систему при перенаправлении на панель управления ваш URL
header("Location: dashboard.php?name_=$FullName&subject_=$Subject&phone_=$Phone&email_=$Email&message_=$Message");
эти переменные не существуют. вам нужно использовать $_GET['name_']
и т. д., имена, используемые в URL