2

抱歉,如果标题不是很清楚,但想法是上传工作非常好,当我尝试进行发布更新时,数据库中的旧记录被清除,但文件(图像)被物理保存在主机上。

这是我使用的代码:

$marca = filter_input(INPUT_POST, 'marca', FILTER_SANITIZE_STRING);
$model = filter_input(INPUT_POST, 'model', FILTER_SANITIZE_STRING);
if (is_dir("/home/bahoy/public_html/panou/poze/{$marca}/{$model}"));
else
    mkdir("/home/bahoy/public_html/panou/poze/{$marca}/{$model}", 0755, true);
$director_poza = ("poze/{$marca}/{$model}/");
$numetmp_poza  = $_FILES['numepoza1']['name'];
$numepoza1     = $director_poza . $numetmp_poza;
$numetmp_poza  = $_FILES['numepoza2']['name'];
$numepoza2     = $director_poza . $numetmp_poza;
$numetmp_poza  = $_FILES['numepoza3']['name'];
$numepoza3     = $director_poza . $numetmp_poza;
if (move_uploaded_file($_FILES['numepoza1']['tmp_name'], $numepoza1))
    if (move_uploaded_file($_FILES['numepoza2']['tmp_name'], $numepoza2))
        if (move_uploaded_file($_FILES['numepoza3']['tmp_name'], $numepoza3)) {
            list($width, $height, $type, $attr) = getimagesize($numepoza1) and list($width, $height, $type, $attr) = getimagesize($numepoza2) and list($width, $height, $type, $attr) = getimagesize($numepoza3);
            switch ($type) {
                case 1:
                    $ext = ".gif";
                    break;
                case 2:
                    $ext = ".jpg";
                    break;
                case 3:
                    $ext = ".png";
                    break;
                default:
                    print "Format foto neacceptat";
            }
        }

对于我正在使用的 SQL 记录$numepoza1,它们是文件路径$numepoza2$numepoza3 我需要将旧文件记录保留在 sql 中,或者如果我想更改图像,以物理方式和 sql 记录替换它们。想法?

4

0 回答 0