[英]Store session array in DB
<?php
include 'connection.php';
session_start();
$noteinfo=array();
$noteinfo['note']=$_POST['note'];
$_SESSION['noteinfo']=$noteinfo;
if (isset($_POST['submit'])) {
if (empty($_POST['note'])) {
echo "Dobavete Komentar";
}if (!empty($_SESSION['noteinfo'])) {
$check=mysqli_escape_string($conn,$_SESSION['userinfo']['fname']);
$sql = "INSERT INTO users (user_fname,user_mname,user_lname,user_login,user_email,user_phone) VALUES ('$_SESSION['userinfo'][0]}','{$_SESSION['userinfo'][1]}','{$_SESSION['userinfo'][2]}','{$_SESSION['userinfo'][3]}','{$_SESSION['userinfo'][4]}','{$_SESSION['userinfo'][5]}')";
$sql1= "INSERT INTO addresses (address_line_1,address_line_2,address_zip,address_city,address_province,address_country) VALUES ('$_SESSION[adr1]','$_SESSION[adr2]','$_SESSION[zip]','$_SESSION[city]','$_SESSION[provinciq]','$_SESSION[durjava]')";
$sql2="INSERT INTO notes (note_text) VALUES ('$_SESSION[note]')";
if (mysqli_query($conn,$sql)) {
echo "Added";
if (mysqli_query($conn,$sql1)) {
echo "Added";
if (mysqli_query($conn,$sql2)) {
echo "Added";
header("refresh:3 ; url=profile.php");
}
}
}else{
echo "Error";
}
}else{
header("refresh:1 ; url=zapiski.php");
}
?>
當我完成我的3個用戶信息表格時,我將它們存儲在會話數組中,第三步之后,我想從數據庫中的數組中添加全部信息。但是當我單擊“提交”按鈕時,我的數據庫僅填充了ID也沒有數據
session_start();
$userinfo=array();
$userinfo['fname']=$_POST['Fname'];
$userinfo['mname']=$_POST['Mname'];
$userinfo['lname']=$_POST['Lname'];
$userinfo['login']=$_POST['login'];
$userinfo['email']=$_POST['email'];
$userinfo['phone']=$_POST['phone'];
$_SESSION['userinfo']=$userinfo;
這是第一個數組,就像其他的2一樣。
$ _SESSION這是一個'superglobal'或自動全局變量。 這僅表示它在整個腳本的所有作用域中均可用。 不需要做全局變量。 在函數或方法中訪問它。
<?php
include 'connection.php';
session_start();
$noteinfo=array();
$noteinfo['note']=$_POST['note'];
$_SESSION['noteinfo']=$noteinfo;
if (isset($_POST['submit'])) {
if (empty($_POST['note'])) {
echo "Dobavete Komentar";
}if (!empty($_SESSION['noteinfo'])) {
$check=mysqli_escape_string($conn,$_SESSION['userinfo']['fname']);
$sql
= "INSERT INTO users (user_fname,user_mname,user_lname,user_login,user_email,user_phone) VALUES ('{$_SESSION['userinfo']['fname']}','{$_SESSION['userinfo']['mname']}','{$_SESSION['userinfo']['lname']}','{$_SESSION['userinfo']['login']}','{$_SESSION['userinfo']['email']}','{$_SESSION['userinfo']['phone']}')";
$sql1
= "INSERT INTO addresses (address_line_1,address_line_2,address_zip,address_city,address_province,address_country) VALUES ('$_SESSION[adr1]','$_SESSION[adr2]','$_SESSION[zip]','$_SESSION[city]','$_SESSION[provinciq]','$_SESSION[durjava]')";
$sql2="INSERT INTO notes (note_text) VALUES ('$_SESSION[note]')";
if (mysqli_query($conn,$sql)) {
echo "Added"; if (mysqli_query($conn,$sql1)) {
echo "Added";
if (mysqli_query($conn,$sql2)) {
echo "Added";
header("refresh:3 ; url=profile.php");
}
}
}else{
echo "Error"; }
}
else{
header("refresh:1 ; url=zapiski.php");
}
}
您正在使用indexes(0,1,2,....)
而不是(fname, mname, lname,....)
。 所以你應該更新以下行
$sql = "INSERT INTO users (user_fname,user_mname,user_lname,user_login,user_email,user_phone) VALUES ('{$_SESSION['userinfo'][0]}','{$_SESSION['userinfo'][1]}','{$_SESSION['userinfo'][2]}','{$_SESSION['userinfo'][3]}','{$_SESSION['userinfo'][4]}','{$_SESSION['userinfo'][5]}')";
同
$sql = "INSERT INTO users (user_fname,user_mname,user_lname,user_login,user_email,user_phone) VALUES ('{$_SESSION['userinfo']['fname']}','{$_SESSION['userinfo']['mname']}','{$_SESSION['userinfo']['lname']}','{$_SESSION['userinfo']['login']}','{$_SESSION['userinfo']['email']}','{$_SESSION['userinfo']['phone']}')";
您在第一個查詢中遇到語法錯誤,丟失了{
此'$_SESSION['userinfo'][0]}',
應該為'{$ _SESSION ['userinfo'] [0]}'。
另外,考慮從變量中刪除索引。 此'{$_SESSION['userinfo'][0]}'.
到'{$_SESSION['userinfo']}'
。
您正在發送錯誤的信息作為值。 您應該編寫例如VALUES ('{$_SESSION['userinfo']['fname']}',...
inted of
VALUES ('$_SESSION['userinfo'][0]}','{$_SESSION['userinfo'][1]}','{$_SESSION['userinfo'][2]}','{$_SESSION['userinfo'][3]}','{$_SESSION['userinfo'][4]}','{$_SESSION['userinfo'][5]}')"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.