我在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
更明确的是,当我上传图像时,该图像的转换后的名称在我的数据库中运行良好,但它在我的上传文件夹中的图像名称发生了不同...所以它与数据库中的名称不匹配与文件夹/路径... 感谢您的支持,当我在编程中成长时,我也会尝试帮助其他人!**
答案 0 :(得分:2)
当您看到该图标时,通常表示它与图像的链接无效。尝试右键单击并打开图像并检查它具有的URL。我经常看到它没有我希望看到的URL所以现在可能对你来说也是一样的。根据给定的URL,尝试查找并修复代码中的错误。
答案 1 :(得分:2)
试试这个 在你的图像标签中src =&#34;在这里使用ci函数作为base_url()/ pathname with img name&#34;并将您的图像上传到资产/上传。所以可以访问。