从Web表单将数据插入两个表

时间:2011-06-24 10:09:17

标签: php mysql

表人

“为person_id”  “PERSON_NAME”


表格电子邮件

“EMAIL_ID” “电子邮件” “为person_id”


将表单中的数据插入到这些表中的SQL注释是什么? 在网络表单中,我有一个名称的文本框和电子邮件的动态文本框

4 个答案:

答案 0 :(得分:0)

将表单值读入变量,安全地插入MySQL数据库:http://www.php.net/manual/en/function.mysql-query.php

答案 1 :(得分:0)

假设您正在使用POST并且设置了与db的连接,我会这样做(我省略验证等等,只是插入数据的sript:

$person_name = mysql_real_escape_string($_POST['person_name']);
$email= mysql_real_escape_string($_POST['email']);
$query = sprintf("INSERT INTO person ('person_name') VALUES ('%s')'",$person_name);
$result = mysql_query($query);

// always set your variables to a default value
$success = false;

// did the query execute successfully?
if($result){
    $success = true;
}

if($success){
  $person_id = mysql_insert_id();

  $query = sprintf("INSERT INTO email ('email','person_id') VALUES ('%s','%s')",$email,$person_id);

  $resultSecond = mysql_query($query);
}

答案 2 :(得分:0)

涉及几个步骤。您首先需要validate the user's input - 不要只是将其直接放入数据库中。验证应该在服务器上完成。您也可以使用Javascript执行客户端验证,但这只应该用于增强用户体验 - 它不能取代服务器端验证。首先,您可以查看PHP的Filter methods,或者查找form validation library

当你将它插入数据库时​​,我强烈建议使用prepared statements而不是搞乱可怕的逃避。

PHP网站上给出的示例非常好,应该让您入门。你也可以结帐:

PHP PDO prepared statements
Why you Should be using PHP’s PDO for Database Access

答案 3 :(得分:0)

如果只想通过SQL查询执行此操作,则需要编写类似

的过程
INSERT INTO person (person_name) VALUES ('PERSON_NAME')
INSERT INTO email (email_id,email,person_id) VAUES ('EMAIL_ID','EMAIL',(SELECT LAST_INSERT_ID()))

我认为您可以通过网络表单发布PERSON_NAME,EMAIL_ID,EMAIL。

我认为从您的自动填充框中发送EMAIL_ID,EMAIL很容易。