我正在尝试将数据插入到同一个数据库中的两个不同的表中,如果我尝试将其插入到一个数据库中,但是,一旦我将第二个查询插入到我的代码中($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')");
}
答案 0 :(得分:1)
您可能遇到一些问题,其中某些字符(如“和”)正在破坏SQL查询(更不用说为SQL注入攻击打开您的应用程序)。
我建议清理所有用户提供的数据,如下所示:
$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的异常或恶意内容,请务必进行操作。
答案 1 :(得分:0)
您是否尝试回显查询,然后直接在数据库上运行它们?
如果没有关于数据库的更多信息,我们无法确定查询本身是否有效。