图像上传但我看不到它们

时间:2016-05-26 17:04:39

标签: php jquery mysql ajax

我在CMS网站上工作, 图像上传但我看不到它们,它显示了我

在Inspect元素中,它显示“无法加载给定的URL”或“无法加载响应数据”....或

无法加载资源:服务器响应状态为404(未找到)jpg

我会在这里放一些工具,也许你们会帮助我解决这个问题,因为我已经完成了!我无法弄清楚

[![在此处输入图像说明] [1]] [1]

<?php if(isset($opened['id'])){ ?>
    <script>

        $(document).ready(function() {

            Dropzone.autoDiscover = false;

            var myDropzone = new Dropzone("#avatar-dropzone");

//            myDropzone.on("success", function(file){
//                $('#avatar').load("ajax/avatar.php?id=<?php echo $opened['id'];?>");
//            });
        });

    </script>
<?php } ?>


<h1>User Manager</h1>


<div class="row">

    <div class="col-md-3">

        <div class="list-group">

        <a class="list-group-item" href="?page=users">
            <i class="fa fa-plus"></i> New User
        </a>    

            <?php 

                $q = "SELECT * FROM users ORDER BY last ASC";
                $r = mysqli_query($dbc, $q);

                while($list = mysqli_fetch_assoc($r)) { 
                    
                    $list = data_user($dbc, $list['id']);

                    //$blurb = substr($page_list['body'], 0, 300); // scoate decat primele 200 de caractere!
            ?>    

                    <a class="list-group-item <?php selected($list['id'], $opened['id'], 'active'); ?>" href="index.php?page=users&id=<?php echo $list['id']; ?>">
                        <h4 class="list-group-item-heading"><?php echo $list['fullname_reverse'];?></h4>
<!--                        <p class="list-group-item-text"><?php #echo $blurb; ?></p>-->
                    </a>

            <?php } ?>      

        </div>

    </div>

    <div class="col-md-9">

        <?php if(isset($message)) { echo $message; } ?>
        
<!--Caracteristicile editabile ale paginilor-->
        
        <form action="index.php?page=users&id=<?php echo $opened['id']; ?>" method="post" role="form">

            <?php if($opened['avatar'] != '') { ?>
            
                <img src="http://localhost/mywebsite/dinamiccms/uploads/<?php echo $opened['avatar']; ?>">
            
        
            <?php if(isset($opened['id'])){ ?>
        <form action="uploads.php?id=<?php echo $opened['id']; ?>" class="dropzone" id="avatar-dropzone">
            <div class="fallback">
                <input type="file" name="file">
            </div>
        </form>
            <?php } ?>
    
    </div>

</div>

----------我的htaccess

<IfModule mod_rewrite.c>
  RewriteEngine on
  #RewriteBase /
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^ index.php [L]
</IfModule>

-------和我的uploads.php

<?php

include('../config/connection.php');

$ds = DIRECTORY_SEPARATOR; //1
$id = $_GET['id'];

$storeFolder = "../uploads"; //2

$ext = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);
$newname = time();
$random = rand(100,999);
$name = $newname.$random.'.'.$ext;

$q = "UPDATE users SET avatar = '$name' WHERE id = $id";
$r = mysqli_query($dbc, $q);

//echo $q.'<br>';
//echo mysqli_error($dbc);

if(!empty($_FILES)) {
    
    $tempFile = $_FILES['file']['tmp_name']; //3
    
    $targetPath = dirname(__FILE__). $ds. $storeFolder. $ds; //4
    
    $targetFile = $targetPath. $_FILES['file']['name']; //5
    
    move_uploaded_file($tempFile, $targetFile); //6
    
}

?>

我想提一下,我使用dropzonejs,但我认为这无关紧要,因为我的图片已上传,存储在该文件夹中,但我无法查看它们。我与数据库的联系是对的。

这就是我的文件夹的外观,但我试图改变路径并仍然遇到同样的问题。

**后来编辑:我发现了问题!

if(!empty($_FILES)) {

$tempFile = $_FILES['file']['tmp_name']; //3

$targetPath = dirname(__FILE__). $ds. $storeFolder. $ds; //4

$targetFile = $targetPath. $name; //5

move_uploaded_file($tempFile, $targetFile); //6
}

这是问题,而不是

$targetFile = $targetPath. $name; //5

我有

$targetFile = $targetPath. $_FILES['file']['name']; //5

更明确的是,当我上传图像时,该图像的转换后的名称在我的数据库中运行良好,但它在我的上传文件夹中的图像名称发生了不同...所以它与数据库中的名称不匹配与文件夹/路径... 感谢您的支持,当我在编程中成长时,我也会尝试帮助其他人!**

2 个答案:

答案 0 :(得分:2)

当您看到该图标时,通常表示它与图像的链接无效。尝试右键单击并打开图像并检查它具有的URL。我经常看到它没有我希望看到的URL所以现在可能对你来说也是一样的。根据给定的URL,尝试查找并修复代码中的错误。

答案 1 :(得分:2)

试试这个 在你的图像标签中src =&#34;在这里使用ci函数作为base_url()/ pathname with img name&#34;并将您的图像上传到资产/上传。所以可以访问。