|
0 Всего найдено: 21
boychenko
Сообщение
14/05/2011 19:15
Копия темы
Загруженные на сервер картинки выводятся набором символов. Поставил денвер на комп и пытаюсь настроить upload файлов (в основном картинок) на сервер. Чтобы результат сразу показывался на странице. Текстовый документ без проблем загружается и корректно отображается. А картинки нет. На аттаче видно, что получается. Одни символы вместо картинки. Помогите, уважаемые знатоки, решить эту проблему.
boychenko
Сообщение
14/05/2011 19:28
Копия темы
Спасибо за ответ. Объясните, пожалуйста, подробней..как это сделать.
FIXXER
Сообщение
14/05/2011 19:31
Копия темы
а каким образом заливаете фото на сервре? через ftp или форму на странице?
boychenko
Сообщение
14/05/2011 19:38
Копия темы
через форму на странице. Вот только что залил на хост эти два файла (форма и обработчик), тот же результат :
abbat
Сообщение
15/05/2011 09:48
Копия темы
При отдаче картинки надо указывать нужный MIME тип через header. Как-то типа: header("Content-type: " . image_type_to_mime_type(IMAGETYPE_PNG)); Это есть в коде?
boychenko
Сообщение
15/05/2011 09:54
Копия темы
Спасибо за ответ. Нет, такого кода нет и я не знаю пока в какое место его вставить. Вот листинг формы, допишите его, пожалйста, чтобы было правильно. <html> <body> </head><form enctype="multipart/form-data" action="upload.php" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="300000" /> Отправить этот файл: <input name="myfile" type="file" /> <input type="submit" value="Отправить файл" /> </form </body> </html>
abbat
Сообщение
15/05/2011 10:03
Копия темы
Не, форма здесь ни при чем. Я так понимаю, что с сервера картинка отдается через скрипт вот там и должен стоять код, который указывает корректный MIME тип отдаваемого потока. Иначе браузер не знает как его отображать и отображает как текст.
boychenko
Сообщение
15/05/2011 10:31
Копия темы
Вот листинг обработчика для этой формы: <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> </head> <?php // Загрузка файлов на сервер // Если register_globals=Off // Если upload файла if(isset($_FILES["myfile"])) { $myfile = $_FILES["myfile"]["tmp_name"]; $myfile_name = $_FILES["myfile"]["name"]; $myfile_size = $_FILES["myfile"]["size"]; $myfile_type = $_FILES["myfile"]["type"]; $error_flag = $_FILES["myfile"]["error"]; // Если ошибок не было if($error_flag == 0) { print("Имя файла на нашем сервере (во время запроса): ".$myfile." "); print("Имя файла на компьютере пользователя: ".$myfile_name." "); print("MIME-тип файла: ".$myfile_type." "); print("Размер файла: ".$myfile_size." "); // Получаем содержимое файла $fp = fopen($myfile,"r"); $content = fread($fp, filesize($myfile)); fclose($fp); //echo implode("",file($myfile)); // Вывод содержимого файла print($content); } // end of if 2 } // end of if 1 ?> Может гдет-то тут должна быть вставлена строка, что вы написали?
boychenko
Сообщение
15/05/2011 10:41
Копия темы
Поставил строку не помогло. Может есть еще варианты?
abbat
Сообщение
15/05/2011 10:51
Копия темы
Обратить внимание на warning заголовки должны отсылаться до того, как будет выведена хоть одна строка содержимого. А так же, конечно же, нельзя мешать в одном потоке выдачу текстовой и графической информации ("Имя файла на нашем сервере" и другие).
boychenko
Сообщение
15/05/2011 10:56
Копия темы
Так какой же все-таки выход? Задача стоит отправить именно картинку и чтобы она показалась на странице.
abbat
Сообщение
15/05/2011 11:02
Копия темы
Убрать вывод строк в условии if($error_flag == 0) иначе происходит смешивание различных типов информации. Т.е. либо рисунок отдаваться должен, либо текст.
boychenko
Сообщение
15/05/2011 11:08
Копия темы
К сожалению, я почти чайник в программировании, поэтому, если вам не трудно, напишите работающий код, а то я уже вторые сутки маюсь, с казалось бы простым вопросом..
abbat
Сообщение
15/05/2011 11:10
Копия темы
0
Удалить или закомментировать часть кода: if($error_flag == 0) { print("Имя файла на нашем сервере (во время запроса): ".$myfile.""); print("Имя файла на компьютере пользователя: ".$myfile_name.""); print("MIME-тип файла: ".$myfile_type.""); print("Размер файла: ".$myfile_size.""); } |
Выразить восторг, поругаться или предложить что-нибудь можно на форуме |
Для обсуждения этого сервиса так же есть темы на фрилансе по поиску , флудотопу ,и по удалённым сообщениям ,и по Актуальным/популярным темам , и по топу "кто кому больше наотвечал" |