我正在从事一个电子商务项目,目前在项目的后端,您可以添加或删除菜单或子菜单的类别。
我已经检查了dll是否启用。
这就是我要犯的错误
致命错误:在第15行的C:\xampp\htdocs\project\admin\categories.php中调用未定义函数sanitize()
这是代码
<?php
require_once $_SERVER['DOCUMENT_ROOT'].'/project/core/init.php';
include 'includes/head.php';
include 'includes/navigation.php';
$sql = "SELECT * FROM categories WHERE parent = 0";
$result = $db->query($sql);
$errors = array();
// when the form is cick process
$Category = '';
$parent= '';
if(isset($_POST) && !empty($_POST)){
$parent = sanitize($_POST['parent']);
$category = sanitize($_POST['category']);
$sqlform = "SELECT * FROM categories WHERE category ='$category' AND parent = '$parent'";
$fresult = $db->query($sqlform);
$count = mysqli_num_rows($fresult);
//if category is blank
if($category == ''){
$errors[] .= 'The category cannot be left blank';
}
//if it already exixt in database
if($count > 0){
$errors[] .= $category.' Already exits please choose a new category';
}
//display error or update database
if(!empty($errors)){
$display = display_errors($errors);?>
<script>
jQuery('document').ready(function(){
jQuery ('#errors').html('<?php $display;?>');
});
</script>
<?php } else{
//update database
$updatesql = "INSERT INTO categories(category,parent)VALUES ('$category','$parent')";
$db->query($updatesql);
header('location:categories.php');
}
}
?>发布于 2016-12-11 17:15:33
在我看来,sanitize不是在作用域上定义的。它不是一个标准函数,所以它应该在代码中的某个位置。您很可能直接用mysqli_real_escape_string替换它,如下所示:
$parent = mysqli_real_escape_string($_POST['parent']);
$category = mysqli_real_escape_string($_POST['category']);您应该使用PDO,这样会好得多!
希望这能有所帮助!
https://stackoverflow.com/questions/41088759
复制相似问题