Вопрос в следующем. есть код загрузки абсолютного пути
if((!empty($_FILES["userfile"])) && ($_FILES['userfile']['error'] == 0)) {
// проверяем, что файл это изображение JPEG и его размер не больше 350кб
$filename = basename($_FILES['userfile']['name']);
$ext = substr($filename, strrpos($filename, '.') + 1);
if (($ext == "png") && ($_FILES["userfile"]["type"] == "image/png") &&
($_FILES["userfile"]["size"] < 350000000)) {
// путь для сохранения файла
$newname = dirname(__FILE__).'/upload/'.$filename;
// проверяем, файл с таким названием уже есть на сервере
if (!file_exists($newname)) {
// переместить загруженный файл в новое место
if ((move_uploaded_file($_FILES['userfile']['tmp_name'],$newname))) {
echo "Прелестно, файл был загружен: ".$newname;
} else {
echo "Произошла ошибка при загрузке файла!";
}
} else {
echo "Ошибка: файл ".$_FILES["userfile"]["name"]." уже существует";
}
} else {
echo "Ошибка при загрузке файла, изображение не .png или больше чем 350кб.";
}
} else {
echo "Ошибка: файл не загружен!";
В БД записывается все корректно в виде /var/www/..../upload/xxx.png Возникает проблема с выгрузкой и размещением на сайте. Пример кода:
while($array = mysql_fetch_array($resultat4))
{
echo '<div class="main_text" style="float:right;">';
echo '<div class="head">' .$array['name']. '</div><br>';
echo '<img src='.$array['file'].'>';
......
Собственно в src прописывается фул адрес /var/www.... Подскажите, можно ли его обрезать до нужного ./upload/ или же что стоит изменить в коде. Заранее огромное спасибо
Не весь код предоставлен, нет сохранения пути к файлу в Базу данных.
Но это решение корректный ответ сервера при загрузке изображения, рекомендую загружать в бд файл не от корня, а от папки uploads. А ещё лучше - это хранит название файла в чистом виде!
Замени с
$newname = dirname(__FILE__).'/upload/'.$filename;
// проверяем, файл с таким названием уже есть на сервере
if (!file_exists($newname)) {
// переместить загруженный файл в новое место
if ((move_uploaded_file($_FILES['userfile']['tmp_name'],$newname))) {
echo "Прелестно, файл был загружен: ".$newname;
} else {
echo "Произошла ошибка при загрузке файла!";
}
} else {
echo "Ошибка: файл ".$_FILES["userfile"]["name"]." уже существует";
}
На
$newname = dirname(__FILE__).'/upload/'.$filename;
$path = '/upload/'.$filenam;
// проверяем, файл с таким названием уже есть на сервере
if (!file_exists($newname)) {
// переместить загруженный файл в новое место
if ((move_uploaded_file($_FILES['userfile']['tmp_name'],$newname))) {
echo "Прелестно, файл был загружен: ".$path;
} else {
echo "Произошла ошибка при загрузке файла!";
}
} else {
echo "Ошибка: файл ".$_FILES["userfile"]["name"]." уже существует";
}
Спасибо всем кто откликнулся, разобрался:)
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Проект: https://githubcom/pBlueG/Socket/tree/v0
нужно создать символьный массиив с локальны временем(Часы:Минуты:Секунды) 24-часовая система
Нужна помощь в приведении к правильному типу данныхПри помощи строкового типа я получаю список файлов в папке