我能够在我的进程页面中显示数组记录,现在我必须在索引页面上传递该记录。在数组中有超过10条记录。 一旦该记录显示在索引之后,我想在甜蜜警报弹出窗口中显示所有记录。
我正在实现的目标...我正在甜蜜警报中输入名字,并且fname将重定向进程页面并检查fname是否可用(如果可用)以及有多少用户同名可以重定向到索引页面。 我能够检索进程页面中的所有记录,但我必须重定向索引页面上的所有记录。
Getting error:Undefined variable: _SESSION and Invalid argument supplied for foreach()
你能帮助我吗?
Process.php
$array_record=array();
$array_record['idsa']=$row["Id"];
$array_record['Fname']=$row["First_name"];
$array_record['Lname']=$row["Last_name"];
$_SESSION['arr']=$array_record;
// I tried below echo it display record on process page.
/*
$session=$_SESSION['arr'];
foreach($session as $val)
{
echo $val.'<br>';
}
*/
header('Location: index.php?search=1');
索引
if(!empty($_GET['search'])):
$session=$_SESSION['arr'];
foreach($session as $val)
{
echo $val.'<br>';
}
echo "<script>
setTimeout(function() {
swal({
title: 'You details !',
text: '$val',
type: 'info',
closeOnCancel: true,
html:true
}, function() {
window.location = 'index.php';
});
}, 1000);
</script>";
endif;?>
答案 0 :(得分:2)
为了将所有数组记录从process.php获取到index.php,在SESSION中设置该数组并获取index.php中的会话记录。
的index.php
module.exports = function(schema) {
var updateTimestemps = function(next){
var self = this;
if(!self.createdAt) {
self.createdDate = new Date();
//or self.update({},{ $set: { createdDate : new Date(), updatedDate: new Date() } });
} else {
self.updatedDate= new Date();
//or self.update({},{ $set: {updatedDate: new Date() } });
}
next();
};
schema.
pre('save', updateTimestemps ).
pre('update', updateTimestemps ).
pre('findOneAndUpdate', updateTimestemps);
};
process.php
<?php
//Submitting form here => action ="process.php"
?>
的index.php
<?php
//get the records from DB and set the values in session
// Redirect to index.php
session_start();
$_SESSION['arr'] = $row; // $row is the array from Database
header("Location:index.php");
exit;
?>
答案 1 :(得分:0)
我不想建议此方法是最佳方法,但它应该有助于解决您可能遇到的一些问题。
header('Location: startEntry.php?data=' . base64_encode([$row["Id"],$row["First_name"],$row["Last_name"]]));
我认为这里更重要的问题是你说过你正在传递:
超过10条记录
在某些时候,无论您使用何种方法,都可能会开始达到URL长度限制。