PHP以多种形式将数据保存在sql中


PHP save data in sql in multiform

我使用的是这里给出的多种形式的PHP脚本。它基本上是一种在同一页面上通过多个步骤完成表单。我只是一个PHP的初学者,所以我从这个脚本中得到了这个想法。我没有理解的是:"如何将用户输入的数据存储在SQL表中?

save函数中,不要将数据保存到$_SESSION(此处为:$_SESSION[$step][$key] = $val;)中,而是将其保存到SQL数据库中。

但是要小心。在每个输入标记中设置值时,您必须更新脚本以从数据库而不是从$_SESSION检索信息。

编辑:

save函数用于存储用户输入的每个数据。代替:

function save($step, $data) {
    //$_SESSION[$step] = $data;
    $fields = explode('&',$data);
    foreach ($fields as $field) {
        $keyVal = explode('=', $field);
        $key = urldecode($keyVal[0]);
        $val = urldecode($keyVal[1]);
        $_SESSION[$step][$key] = $val;
    }
}

您应该有这样的东西(sql查询不好,这只是一个例子):

function save($step, $data)
{
  //$_SESSION[$step] = $data;
  $fields = explode('&',$data);
  $sql    = "INSERT INTO `ma_table` (`step`, `key`, `val`) VALUES ";
  foreach ($fields as $field)
  {
    $keyVal = explode('=', $field);
    $key = mysql_real_escape_string($keyVal[0]);
    $val = mysql_real_escape_string($keyVal[1]);
    $sql .= "('" . $step . "', '" . $key . "', '" . $val . "')";
  }
  mysql_query($sql);
}