php - 使用 PHP 将数据插入两个单独的表

标签 php mysql sql database forms

我正在尝试将数据插入到同一数据库中的两个不同表中,如果我尝试将其插入到一个数据库中,它会起作用,但是,一旦我将第二个查询插入到我的代码中($desc_query) 它不会更新任何表。

这是我的代码:

    $name= strip_tags($_POST['name']);
    $l_name= strip_tags($_POST['last_name']);

    $c_id = strip_tags($_POST['company_id']);
    $a_d = strip_tags($_POST['add_description']);
    $d_t = strip_tags($_POST['desc_text']);

$connect = mysql_connect('localhost','id','pass') or die ("couldn't connect!"); 

mysql_select_db('database_db') or die('could not connect to database!');   

//inserting names

$job_query=mysql_query("INSERT INTO names VALUES ('', '$name', '$l_name')");

    //inserting a new description if needed. (this is the part that ruins everything)
if($a_d == 'true'){
    $desc_query=mysql_query("INSERT INTO descriptions VALUES ('','$c_id','$d_t')");
}

最佳答案

您可能会遇到一些问题,即某些字符(例如 ' 和 ")会破坏 SQL 查询(更不用说打开您的应用程序以进行 SQL 注入(inject)攻击)。

我建议像这样清理所有用户提供的数据:

$name = mysql_real_escape_string(strip_tags($_POST['name']), $connect);
$l_name = mysql_real_escape_string(strip_tags($_POST['last_name']), $connect);
...
$d_t = mysql_real_escape_string(strip_tags($_POST['desc_text']), $connect);

始终假设用户将输入一些可能(或可能不会)破坏您的 SQL 的古怪或恶意内容。

关于php - 使用 PHP 将数据插入两个单独的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10253981/

相关文章:

php - 使用 Zend 中另一个表的键从表中选择行

php - 判断 PHP mysqli fetch 是否返回数据

php - python调用命令问题

mysql - 更新一列中三个元素的组合

php - Mysql-PHP,基于变量字段的旋转/交叉表

java - Swing app.only 在 JTextArea 中显示一条记录

php - 计算 MySQL 数据库的 Unicode 字符数

php - 我如何将此 SQLDatabase 数据回显到程式化表格中?

c# - 如何使网站状态对所有平台可用

mysql - 获取多个求和值的最大值