Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> определить тип содержимого файла 
:(
    Опции темы
Loncaster
Дата 7.11.2007, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 106
Регистрация: 8.8.2006

Репутация: нет
Всего: нет



Собственно каким образом можно определить, что файл является html либо xml файлом, ну и либо ни тем ни другим соответсвенно? 
--------------------
Ще не вмерла Україна...
PM MAIL   Вверх
BuShaRt
Дата 7.11.2007, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: нет
Всего: 6



примерно так

Код

eregi('\.jpg', $_FILES['fileload'.$i]['name'] )

PM MAIL   Вверх
flashaa
Дата 7.11.2007, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 796
Регистрация: 7.3.2006

Репутация: 1
Всего: 25



Цитата(BuShaRt @  7.11.2007,  16:19 Найти цитируемый пост)
eregi('\.jpg', $_FILES['fileload'.$i]['name'] )

Если я переименую XML в HTML и закачаю, тогда эта проверка ничего не поймет.
Вообще вопрос актуальный.
Можно проверить mime-type(в параметрах закаченного файла).
$_FILES['type'] = 'text/html' для HTML и 'text/xml' для XML соответственно. Откуда берется mime-type, не знаю, может быть по расширению и строится.
Ну а вообще HTML может являться одновременно и XML. Взять хотя бы код этой страницы:
Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head> 
<title>VPF::определить тип содержимого файла - Форум программистов</title>
...
 

Является и HTML и XML одновременно.
Проверить на XML можно, провалидировав его содержимое на стандарт XML.
Код

<?php
$dom = new DOMDocument;
$dom->Load('book.xml');
if ($dom->validate()) {
    echo "This document is valid!\n";
}
?> 

Ну а HTML сам по себе почти безконтрольный. Так что тут алгоритм должен отталкиваться от четкого, понимания, что такое HTML(для данной задачи), иначе таких алгоритмов можно придумать очень много: можно искать тег html, можно просто искать теги и тд и тп.
PM MAIL   Вверх
BuShaRt
Дата 7.11.2007, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: нет
Всего: 6



flashaa
А если не переименовывать?

В таком случае надо првоерять есть ли отличные от HTML тегов элименты в документе, если есть, то это не HTML
PM MAIL   Вверх
flashaa
Дата 7.11.2007, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 796
Регистрация: 7.3.2006

Репутация: 1
Всего: 25



Цитата(BuShaRt @  7.11.2007,  19:10 Найти цитируемый пост)
В таком случае надо првоерять есть ли отличные от HTML тегов элименты в документе, если есть, то это не HTML 


Цитата(flashaa @  7.11.2007,  16:30 Найти цитируемый пост)
алгоритм должен отталкиваться от четкого, понимания, что такое HTML(для данной задачи), иначе таких алгоритмов можно придумать очень много: можно искать тег html, можно просто искать теги и тд и тп. 



PM MAIL   Вверх
SelenIT
Дата 8.11.2007, 02:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 2
Всего: 401



Имхо, можно посмотреть в сторону Tidy-функций - напр., tidy_is_xml и tidy_diagnose...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Endeveit
Дата 9.11.2007, 18:06 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 2.6.2006

Репутация: 1
Всего: 7



PM WWW   Вверх
Alex13
Дата 10.11.2007, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 280
Регистрация: 30.12.2005
Где: Новосибирск

Репутация: нет
Всего: 1



Loncaster, если не ошибаюсь, в правильном XML документе должен быть тег 
Код

<?xml version="1.0"?>


Это сообщение отредактировал(а) Alex13 - 10.11.2007, 11:02


--------------------
Самая страшная ошибка - это ошибка, не имеющая явных причин и конкретных последствий.
Антисоциальный блог.
PM WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

Внимание: данный раздел предназначен для решения сложных, нестандартных задач.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Для профи | Следующая тема »


 




[ Время генерации скрипта: 0.0934 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.