php - MySQL通知: Undefined index: How to resolve

标签 php jquery mysql

我正在使用 PHP、MYSQL 和 JQuery 创建两级下拉选择框。一切看起来都很好,但是当我的父类别没有子类别或者我没有选择子类别时,它会给我错误,我无法理解这个错误的含义以及如何解决。我需要你们的帮助。

错误: Notice: Undefined index: f_child_cat in C:\xampp\htdocs\pathtofile\index.php on line 58 You selected 12 & You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

这是我的前端代码

<?php if(isset($_POST['submit'])){
    $drop = $_POST['first_child_cat'];
    $f_child_cat = $_POST['f_child_cat'];
    echo "You selected ";
    echo $drop." & ".$f_child_cat;

    $query =    mysql_query("SELECT * FROM qa_categories WHERE parentid = $f_child_cat")
                or die(mysql_error());

                echo '<ul>';
                while($cats = mysql_fetch_array( $query ))
                    echo '<li>',$cats['title'],'</li>';

                echo '</ul>';
}
?>

最佳答案

这意味着 $_POST['f_child_cat'] 未定义(不存在)。您应该使用绑定(bind)参数来防止 SQL 注入(inject)并使用 mysqli_PDO 函数。

由于这是您查询的一部分,我建议您像这样包装您的查询:

if( isset($_POST['f_child_cat']) && !empty($_POST['f_child_cat']) ) {
    ... call db
}
else {
    echo "You didn't select this"
}

关于php - MySQL通知: Undefined index: How to resolve,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15577572/

相关文章:

jQuery 使用 .filter() 作为 .addClass()

mysql - 如何显示记录数

具有编辑/删除模式的 PHP while 循环仅返回第一行中的 ID

php - (laravel)使用变量名模型的查询构建器

javascript - 延迟被调用函数中的 JavaScript 代码执行

php - 不使用 echo 查询数据库,生成设计结果

php - 在提交错误的表单后将选择附加到选项

php - 使用 Paypal Merchant SDK 或 Paypal REST API 定期付款

php - 如何使多个列在同一个表中唯一

javascript - 使用 Javascript 更新选项后刷新 HTML 选择