我已经使用 sql select 语句在 html 表单中填写了选择字段,现在我想获取 select 字段生成的值并将其插入到我的外键列中。
我已经检查了我所有的字段名称以确保它们拼写正确并仔细检查了我的代码,我认为"escape_string"可能存在问题,但我不确定如何解决它。我尝试使用"intval",但它给了我错误。它提到的第 86 行是"$result"行。
<?php
if( isset($_POST['submit']) )
{
$category_id = $mysqli->escape_string($_POST['fk_cat_port_id']);
$project_title = $mysqli->escape_string($_POST['proj_title']);
$description_brief = $mysqli->escape_string($_POST['des_brief']);
$description_steps = $mysqli->escape_string($_POST['des_steps']);
$description_conclusion = $mysqli->escape_string($_POST['des_conclusion']);
$project_link = $mysqli->escape_string($_POST['proj_link']);
$project_date = $mysqli->escape_string($_POST['proj_date']);
$disclaimer = $mysqli->escape_string($_POST['disclaimer_rights']);
//insert into database
$query = "INSERT INTO
company_profile (fk_cat_port_id, proj_title, des_brief, des_steps,
des_conclusion, proj_link, proj_date,
disclaimer_rights)
VALUES ('$category_id', '$project_title', '$description_brief',
'$description_steps', '$description_conclusion',
'$project_link', '$project_date', '$disclaimer')
";
$result = $mysqli->query($query) or query_error($query, __LINE__, __FILE__);
}
?>
<div class="form-group">
<label for="fk_cat_port_id">Choose Category:</label>
<select class="form-control" name="fk_cat_port_id" value="">
<?php
$query_cat = "SELECT id_cat_port, port_cat_name
FROM portfolio_categories
ORDER BY port_cat_name DESC";
$result_cat = $mysqli->query($query_cat);
if(!$result_cat)
{
query_error($query_cat, __LINE__, __FILE__);
}
// Do while loop to create option for each row in the database
while ($row_cat = $result_cat->fetch_object())
{
echo '<option value="' . $row_cat->id_cat_port . '">' . $row_cat->port_cat_name . '</option>';
}
?>
</select>
</div>
">字段列表"中的未知列"fk_cat_port_id" 行:86
File:/customers/b/f/b/tabithabjorkman.com/httpd.www/admin/pages/portfolio_create.php
插入到 company_profile("fk_cat_port_id"、"proj_title"、"des_brief"、"des_steps"、"des_conclusion"、"proj_link"、"proj_date", "disclaimer_rights"( 值("2"、"测试"、"测试"、 'test', 'test', 'www.test.rg', '2019-10-21T11:09:43', 'test'(
数据库截图
我要感谢那些花时间回答我问题的人。 一遍又一遍地看了一遍,我找到了答案。 sql 查询中出现错误,我在查询中输入了错误的表名。错误的表名非常相似,以至于它通过了我的检查。 但是,我学到了很多关于使用stackoverflow的知识,所以不要后悔,因为我经常使用这个平台来获得问题的答案,我希望我在这里的错误可以帮助其他人记住检查所有内容并记住值得付出额外的努力来命名您的表,类, IDS 等,使用命名约定作为指导。 https://launchbylunch.com/posts/2014/Feb/16/sql-naming-conventions/
您的查询是正确的,因此请检查表中的列名。