使用表单提交确认与文本和图像数据库插入相关的PHP安全/验证方法

使用表单提交确认与文本和图像数据库插入相关的PHP安全/验证方法,php,security,Php,Security,下稿自: 我想完善一个用于ajax提交HTML表单的模板;提交文本和图像文件字段。我已经完成了文本提交,并且相信我的ajax已经为图像上传做好了准备(上面问题中的HTML和JS代码)。我正在计划如何处理服务器端脚本,并寻求一些指导 PHP 您希望在应用程序中构建的是将文件分离到目录中(可能是通过MySQL表中的ID?) 例如:ID为1234、名称为photo.jpg的文件将位于1/2/3/4/photo.jpg中 原因:随着文件数量的不断增加,如果将它们放在一个目录中,则在列出目录时绝对会破坏您

下稿自:

我想完善一个用于ajax提交HTML表单的模板;提交文本和图像文件字段。我已经完成了文本提交,并且相信我的ajax已经为图像上传做好了准备(上面问题中的HTML和JS代码)。我正在计划如何处理服务器端脚本,并寻求一些指导

PHP


您希望在应用程序中构建的是将文件分离到目录中(可能是通过MySQL表中的ID?)

例如:ID为1234、名称为photo.jpg的文件将位于1/2/3/4/photo.jpg中


原因:随着文件数量的不断增加,如果将它们放在一个目录中,则在列出目录时绝对会破坏您的计算能力,更不用说手动查找某些特定文件的可能性了。您还会发现,您可以保留原始文件名并避免名称冲突:)

非常感谢。关于图像验证,您喜欢下面的详细信息吗?
<?php 
require ("config.php");
require (MYSQL);
//standard includes that take care of DB connection

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// Check for a form submission

    if (preg_match ('/^.{2,140}$/', $_POST['textInput'])) {
        $t = $_POST['textInput'];
        } else {
        $errors['textInput'] = 'Missing Text';
    }

    $i = //Not finished image upload code yet. I'll be using the guide at below w3schools link.

    if (empty($errors)) {   
    $insertExample = $dbc->prepare("INSERT INTO exampleTable (text,img) VALUES (?,?)");     
    $insertExample->bind_param('sb',$t,$i);
    $insertExample->execute();
    mysqli_close($dbc);
    }
}

?>