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

时间:2012-08-23 16:15:15

标签: php sql

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

1 个答案:

答案 0 :(得分:4)

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);
}