2014-05-04 29 views
0

我最近才开始使用php,所以也许这是一个简单的问题。然而,我不能在这里找到答案。从不同的html页面插入到一个数据库行中

我有一个数据库,我想从我的html页面填充内容。从一个页面填充它,很好地工作,没有麻烦。

但是,我有不同的变量来自不同的html页面,但应插入同一个数据库和同一行(具有相同的ID)。

例如:

第1页

<form action="tomydatabase.php" method="post"> 
<input type="hidden" name="varA" id="varA" value=""> 
<input type="hidden" name="varB" id="varB" value=""> 
</form> 

第2页

<form action="tomydatabase.php" method="post"> 
<input type="hidden" name="varC" id="varC" value=""> 
<input type="hidden" name="varD" id="varD" value=""> 
</form> 

这是我的PHP脚本的一部分:

$A = mysqli_real_escape_string($con, $_POST['varA']); 
$B = mysqli_real_escape_string($con, $_POST['varB']); 
$C = mysqli_real_escape_string($con, $_POST['varC']); 
$D = mysqli_real_escape_string($con, $_POST['varD']); 
$sql="INSERT INTO `table02` (`variableA`, `variableB`, `variableC`, `variableD`) 
VALUES ('$A', '$B', '$C', '$D'); 

我想实现的是, var。的值可行的第一个html页面的A和B与第二页的变量C和D放在同一行。我怎么能这样做?

+1

在Session上存储varA和varB。或者你可以添加varA,varB作为插入,然后使用varC和varD进行更新。 –

回答

0
// Start Session 
session_start(); 

// Get value for $A: from POST (if is set) else from SESSION (if is set) 
if(isset($_POST['varA']) 
    $A = $_POST['varA']; 
elseif(isset($_SESSION['varA'])) 
    $A = $_SESSION['varA']; 
else 
    $A = ''; 

// Store last value for $A 
$_SESSION['varA'] = $A; 

// Get value for $B: from POST (if is set) else from SESSION (if is set) 
if(isset($_POST['varB']) 
    $B = $_POST['varB']; 
elseif(isset($_SESSION['varB'])) 
    $B = $_SESSION['varB']; 
else 
    $B = ''; 

// Store last value for $B 
$_SESSION['varB'] = $B; 

// Get value for $C and $D 
$C = (isset($_POST['varC'])) ? $_POST['varC'] : ''; 
$D = (isset($_POST['varD'])) ? $_POST['varD'] : ''; 

// Make query 
$sql = sprintf(
    "INSERT INTO `table02` (`variableA`, `variableB`, `variableC`, `variableD`) 
    VALUES ('%s', '%s', '%s', '%s')", 
    mysqli_real_escape_string($con, $A), 
    mysqli_real_escape_string($con, $B), 
    mysqli_real_escape_string($con, $C), 
    mysqli_real_escape_string($con, $D) 
); 
0

利用Session!

if (!isset($_SESSION)) { 
    session_start(); 
} 

// Get Values 
if(isset($_POST['varA'])) 
    $_SESSION['varA'] = $_POST['varA']; 
if(isset($_POST['varB'])) 
    $_SESSION['varB'] = $_POST['varB']; 
if(isset($_POST['varC'])) 
    $_SESSION['varC'] = $_POST['varC']; 
if(isset($_POST['varD'])) 
    $_SESSION['varD'] = $_POST['varD']; 

// If we have got all variables ready 
if (
isset($_SESSION['varA']) 
&& isset($_SESSION['varB']) 
&& isset($_SESSION['varC']) 
&& isset($_SESSION['varD']) 
) 
{ 
    // Make query 
    $sql = sprintf(
     "INSERT INTO `table02` (`variableA`, `variableB`, `variableC`, `variableD`) 
     VALUES ('%s', '%s', '%s', '%s')", 
     mysqli_real_escape_string($con, $_SESSION['varA']), 
     mysqli_real_escape_string($con, $_SESSION['varB']), 
     mysqli_real_escape_string($con, $_SESSION['varC']), 
     mysqli_real_escape_string($con, $_SESSION['varD']) 
    ); 
} 
相关问题