从循环数据库值中创建会话变量
Create session variables out of looped database values
单击HTML链接时,我正试图从数据库数组中创建一个变量。目标是将用户重定向到使用一段数组数据填充的表单。换句话说,数据库将根据单击的链接(无论$row[1]、$row[2]和$row[3]的值是多少)进行查询和表单填充。
<?php
ini_set('display_errors',1); error_reporting(E_ALL);
$DATE = date('Y-m-d');
require_once 'IRCconfig.php';
$connection = new mysqli($db_hostname, $db_username, $db_password, $db_database);
if ($connection->connect_error) die($connection->connect_error);
$query = "SELECT * FROM CLIENT_CHECKIN1 WHERE DATE>='$DATE'";
$result = $connection->query($query);
if (!$result) die ("Database access failed: " . $connection->error);
$rows = $result->num_rows;
for ($j = 0 ; $j < $rows ; ++$j)
{
$result->data_seek($j);
$row = $result->fetch_array(MYSQLI_NUM);
echo <<<_END
<pre>
<a href="http://localhost/populateClientCheckin.php" class="post">$row[1] $row[2] $row[3]</a>
</pre>
_END;
}
?>
如果有人能为我提供一些关于如何实现这一目标的煽动,我将不胜感激。
请在此处阅读有关会话的更多信息
然后,回答您的问题:
首先您需要启动会话,就像脚本顶部的session_start();
一样简单。
第二个您需要使用如下DB值实例化会话变量:$_SESSION['var'] = $value;
。
第三个,在表单所依赖的html文件或其他文件中,只需检查它:
if(isset($_SESSION['var'])) {
echo '<input type="text" value="'.$_SESSION['var'].'" />';
} else {
echo '<input type="text" value="" />';
}
如果设置了该值,则使用该值。
L.E:所以…首先。。。session_start();
没有它,就没有会话的意义。
其次,您可以像创建$_SESSION['some_name'] = $row[1]
一样创建它,这样var将保留$row[1]
中的值。我认为这是你所需要的价值。不要像$_SESSION["$row1"]那样操作,因为首先这是不正确的,您将不会有row1的值。你需要一个唯一的名字,这样你就可以在有表格的地方叫它。
上面的代码将变成这样:
<?php
session_start();
ini_set('display_errors',1); error_reporting(E_ALL);
$DATE = date('Y-m-d');
require_once 'IRCconfig.php';
$connection = new mysqli($db_hostname, $db_username, $db_password, $db_database);
if ($connection->connect_error) die($connection->connect_error);
$query = "SELECT * FROM CLIENT_CHECKIN1 WHERE DATE>='$DATE'";
$result = $connection->query($query);
if (!$result) die ("Database access failed: " . $connection->error);
$rows = $result->num_rows;
for ($j = 0 ; $j < $rows ; ++$j)
{
$result->data_seek($j);
$row = $result->fetch_array(MYSQLI_NUM);
$_SESSION['first_row'] = $row[1];
$_SESSION['second_row'] = $row[2];
$_SESSION['third_row'] = $row[3];
echo <<<_END
<pre>
<a href="http://localhost/populateClientCheckin.php" class="post">$row[1] $row[2] $row[3]</a>
</pre>
_END;
}
?>
如果你有表单和<input type = "text" value = "" />
,那么在你需要值的地方,就这样做:
<input type = "text" value = "<?php echo (isset($_SESSION['first_row']) ? $_SESSION['first_row'] : ''); ?>" />
<input type = "text" value = "<?php echo (isset($_SESSION['second_row']) ? $_SESSION['second_row'] : ''); ?>" />
<input type = "text" value = "<?php echo (isset($_SESSION['third_row']) ? $_SESSION['third_row'] : ''); ?>" />
希望这能有所帮助!:D
相关文章:
- 如何在不使用 express 的情况下在 nodejs 中创建会话
- 为持久单页应用程序创建会话超时警告
- 创建在 ASP 会话中保留的弹出窗口
- 如何在javascript中以编程方式创建新的Google Analytics会话/访问者
- 为动态文本框创建新的会话变量
- 流星 - 创建一个复选框,用于隐藏会话中已完成的决议
- Nodejs 在每个请求上创建会话
- 从循环数据库值中创建会话变量
- Joomla-使用ajax从复选框创建会话变量
- 在ajax成功中创建会话变量
- Internet Explorer不允许我使用这个Javascript函数创建会话cookie
- 如何使用Node Js创建会话
- 为应用程序创建会话超时
- 无法在okta POST /sessions API调用中使用SessionToken创建会话
- 不使用cookie创建会话
- 如何在JavaScript MVC3中创建会话变量和检索
- 如何在jquery中为每个选项卡创建会话
- 使用Ajax创建会话和回显结果
- 如何在jQuery中创建会话
- 有可能在JavaScript中创建会话变量吗?