Добър вечер използвам следния скрипт за качване на снимки, качва снимката дотук добре но след качването ми показва грешен линк към снимката къде му е грешката ето го:
след качване на снимката ми дава следния линк:
а верния линк е:
и немога да разбера защо така ми го дава, защо не ми показва верния линк а ми дава грешния.
иначе фаила ми се казва pic.php
PHP:
<?php
error_reporting(0);
$upload_dir = "img/uploads/images/"; //Може да се смени с друга папка , която вие си пожелаете
$size_bytes = 5242880; //Големината на файла в bytes
$extlimit = "yes"; //Да има лимит или не (yes/no)
$limitedext = array(".gif",".jpg",".png",".jpeg",".psd"); //Разрешени файлове за качване
//Далй папката в която ще се качват файловете съществува или не
if (!is_dir("$upload_dir")) {
die ("Грешка: Папката <b>($upload_dir)</b> не съществува");
}
if(isset($_POST['uploadform'])){
// Когато полето на формата е попалнено тогава ще се качват нещата
//Започване на ъплоад формата.
$file_tmp = $_FILES['filetoupload']['tmp_name'];
$file_name = $_FILES['filetoupload']['name'];
//Взимане на размера на файла
$file_size = $_FILES['filetoupload']['size'];
//Показване когато не е избран файл
if (!is_uploaded_file($file_tmp)){
echo "<div class='error'>Грешка : Моля изберете файл за качване!. <br>↵<a href=\"$_SERVER[HTTP_REFERER]\">НАЗАД</a><div>";
exit(); //Излиза от това и не прави нищо друго.
}
//Проверява дали големината на файла съвпада с допустимата
if ($file_size > $size_bytes){
echo "<div class='error'>Грешка : Файла е твърде голям. Той трябва да бъде под <b>". $size_bytes / 1024 ."</b> KB. <br />↵<a href=\"$_SERVER[HTTP_REFERER]\">НАЗАД</a></<div>";
exit();
}
//Далй файла е от допустимите
$ext = strrchr($file_name,'.');
if (($extlimit == "yes") && (!in_array(strtolower($ext),$limitedext))) {
echo("<div class='error'>Грешка : Този тип файл не е позволен за качване.<div> ");
exit();
}
// Далй има такъв файл
$file_name = rand(0,100000).strrchr($file_name,'.');
while(file_exists($upload_dir.$file_name)){
$file_name = rand(0,100000).strrchr($file_name,'.');
}
$snimkata = $site_link."".$upload_dir."".$file_name;
//На мястото на интервала (space) се слага "_".
$file_name = str_replace(' ', '_', $file_name);
//Местене на файла в папката която сме посочили отгоре на скрипта
//move_uploaded_file('filename','destination') С тази функция преместваме файла в избраната от нас диреактория
if (move_uploaded_file($file_tmp,$upload_dir.$file_name)) {
//Казва на потребителя кога файла е качен и дава лйнк към него
echo "<div class='success'><center>Файла (<a href=\"$upload_dir$file_name\">$file_name</a>) е качен успешно!<div><br /><br />
<img src=\"$_SERVER[HTTP_REFERER]$snimkata\" border=\"0\"><br>
<b>phpBB/IPB - снимката</b><br>
<input type=\"text\" value='[url=$_SERVER[HTTP_REFERER]$snimkata][img]$_SERVER[HTTP_REFERER]".$snimkata."[/img] [/url]' size=\"100\"><br>
<b>HTML Текстови линк</b><br>
<input type=\"text\" value='<a href=\"$_SERVER[HTTP_REFERER]$snimkata\">$_SERVER[HTTP_REFERER]".$snimkata."</a>' size=\"100\"><br>
<b>Директен линк към оригинала</b><br>
<input type=\"text\" value='$_SERVER[HTTP_REFERER]".$snimkata."' size=\"100\"><br>
↵<a href=\"$_SERVER[HTTP_REFERER]\">НАЗАД</a>";
exit();
}else{
//Показва грешка при провал на преместването
echo "Има проблем при преместването на вашия файл. <br />↵<a href=\"$_SERVER[HTTP_REFERER]\">НАЗАД</a>";
exit();
}
//Край на ....
// Ако формата не е попълнена да се покаже това :
}else{
//Началото на else
// Проверяване на сички наши заявки (да не се надвишава големината , и да е един от избраните типове файлове от нас)
for($i=0;$i<count($limitedext);$i++){
if (($i<>count($limitedext)-1))$commas=", ";else $commas="";
list($key,$value)=each($limitedext);
$all_ext .= $value.$commas;
}
//Изложението
echo "<div class=\"form\">"
."<form method=\"post\" enctype=\"multipart/form-data\" action=\"\">"
."<img src=\"images/warring.png\" alt=\"poddurjani formati\"/> Поддържани формати: $all_ext (До 5MB)<br />"
."Картинка <input type=\"file\" name=\"filetoupload\" class=\"input\" /><br /><br />"
."<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"$size_bytes\" />"
."<input type=\"submit\" class=\"submit\" name=\"uploadform\" value=\"Качи!\" /><br />"
."</form>"
."</div>";
}//Край на else
?>
след качване на снимката ми дава следния линк:
Код:
http://сайт.ком/pic.phpimg/uploads/images/54615.gif
а верния линк е:
Код:
http://сайт.ком/img/uploads/images/54615.gif
и немога да разбера защо така ми го дава, защо не ми показва верния линк а ми дава грешния.
иначе фаила ми се казва pic.php