gpt4 book ai didi

php - 在 PHP MYSQL 中将表单数据从一页传输到许多其他页面

转载 作者:行者123 更新时间:2023-11-29 21:39:04 27 4
gpt4 key购买 nike

我有一个问题,我想将表单数据从“home.php”传输到“dashboard.php”,但在这里我在dashboard.php上检查了登录 session 的 session ,如下所示:-

    <?php  
session_start();
?>
<?php
if(!$_SESSION["UserName"])
{
//Do not show protected data, redirect to login...
header('Location: login.php');
}
?>

这里,当用户从“home.php”提交表单数据时,如果未生成登录 session ,他将被重定向到登录页面进行登录。在主页上我使用 POST 方法形成如下:-

 <form class="form ajax-contact-form" method="POST" action="dashboard.php">
<div class="alert alert-success hidden" id="contact-success">
<span class="glyphicon glyphicon-ok "></span> &nbsp;
<strong>Success!</strong> Thank you for your message.
</div>
<div class="alert alert-danger hidden" id="contact-error">
<span class="glyphicon glyphicon-remove "></span> &nbsp;
<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>

<?php
if (isset($_POST['submit'])) {
$_SESSION['name_'] = $_POST['name_'];
$_SESSION['subject_'] = $_POST['subject_'];
}
?>

</div>
</div>
</form>

登录页面上的代码:-

  <?php  
include("connection.php");
session_start();//session starts here
?>

<?php
if(isset($_SESSION["UserName"]))
{
//Do not show protected data, redirect to login...

header('Location: dashboard.php');
}
?>

<?php

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");

$_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>";
}
}
?>

将“home.php”数据显示到“dashboard.php”的代码

                   <?php echo $_POST["name_"]; ?>
</br> </br>
<?php echo $_POST["subject_"]; ?>
</br> </br>
<?php echo $_POST["message_"]; ?>
</br> </br>

登录后,用户可以访问dashboard.php,但我的问题是,当用户登录后,我从“home.php”获取的输入数据显示错误,如下所附图像链接:-

[1]: http://i.stack.imgur.com/G5Udj.png

执行上述表单数据处理后出现错误 --> 如果没有 session 则登录 --> 仪表板

注意:未定义索引:name_ 在 C:\xampp\htdocs\youngants\dashboard.php 第 401 行

注意:未定义索引:第 403 行 C:\xampp\htdocs\youngants\dashboard.php 中的 subject_

注意:未定义索引:message_ 在 C:\xampp\htdocs\youngants\dashboard.php 第 405 行

注意:未定义索引:名称位于 C:\xampp\htdocs\youngants\dashboard.php 第 408 行

伙计们,我需要你们的帮助,我如何通过 session 变量将数据从“home.php”传送到“dashboard.php”,该变量甚至可以在用户在表单提交后重定向到登录然后返回到仪表板后保持填充状态登录后的.php。

需要更多信息请评论,我会提供。

最佳答案

首先;在第一个代码中,您使用 $_SESSION 但没有调用 session_start();您必须在使用 $_SESSION 的每个文件的开头调用它。

您得到的不是错误而是警告。这是因为 POST 变量与 session 变量不同。发布后(使用 html 表单),它们只会在那里停留一页。如果您想长期使用它们,请将它们放入 session 中或作为 cookie。

在您的登录代码中,您使用 header() 函数来重定向用户,然后将 $_SESSION['Username'] 分配给某些内容,但这可能不会被执行。 (因为你重定向了它。)我建议你退出;重定向后立即调用以使用下面的代码将不会被执行。

关于php - 在 PHP MYSQL 中将表单数据从一页传输到许多其他页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34689492/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com