我试图在我的数据库中添加一个新行表,表中只有两列,我正在使用表单来获取其中一个字段。这是我使用的表单
<form action="add_list.php" method="post">
Name: <input type="text" name="listname">
<input type="submit" value="Add List">
</form>
这里是add_list。php
<?php
/* Execute a prepared statement by binding PHP variables */
$username = "mydb";
$password = "mydb";
$member = $_SESSION['SESS_MEMBER_ID'];
$listname = $_POST["listname"];
try {
$dbh = new PDO('mysql:;dbname=mydb', $username, $password);
$sth = $dbh->prepare('INSERT INTO lists VALUES (:member_id, :listname)');
$sth->execute(array(':member_id' => $member, ':listname' => $listname));
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();}
?>
目前在第5行出现错误
Undefined variable: _SESSION in /home/danu2_cj3/public_html/add_list.php on line 5
我如何识别会话变量?
下面是我在
中设置会话的部分登录代码if($result) {
if(mysql_num_rows($result) == 1) {
//Login Successful
session_regenerate_id();
$member = mysql_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['member_id'];
$_SESSION['SESS_FIRST_NAME'] = $member['firstname'];
$_SESSION['SESS_LAST_NAME'] = $member['lastname'];
session_write_close();
header("location: lists.php");
exit();
}else {
//Login failed
header("location: login-failed.php");
exit();
}
消息格式为:
Undefined variable: _SESSION ...
通常是由于在脚本开始时(在发送报头之前和在任何访问$_SESSION
键的尝试完成之前)缺少session_start
调用引起的。
我试过了,但它只是给我一个空白页,不把它添加到表。
好吧,那意味着你至少已经解决了上面的问题。对于空白页,您应该搜索白屏死机,这是PHP环境中最常见的问题之一。