Не работает импорт/экспорт в XLS/CSV

Материал из 1GbWiki.

(Различия между версиями)
Перейти к: навигация, поиск
Версия 19:19, 31 мая 2010 (править)
77.239.235.129 (Обсуждение)

← К предыдущему изменению
Текущая версия (20:01, 31 мая 2010) (править) (отменить)
Dmih (Обсуждение | вклад)
м (Правки 77.239.235.129 (обсуждение) откачены к версии Dmih)
 
Строка 1: Строка 1:
-Как 1gb.ru разводит лохов+== Проблема 1 ==
-Кризис размножает жуликов с огромной скоростью. А интернет рай для воров и мошенников. Так как получить ответственность за интернет мошенничество крайне сложно. И вот очередной интернет хостер 1gb.ru вышел на ниву жульничества. И добился там превосходных результатов. + 
-Итак, на главой странице сайта написано о низких ценах и домене в подарок. +'''Симптомы'''.
-Однако замечательная фраза содержится на странице отказа от заказа+# При импорте данных из файла, результат парсинга даннных не отображается на странице.<br />
-«Вы можете отказаться от услуг хостинга во время текущего периода оплаты, при этом вам будет возвращены неистраченные средства (пропорционально потраченному времени), за вычетом цены регистрации доменов в подарок, если это происходило в текущем периоде оплаты».+'''Решение'''
-Особенно кайфово звучит фраза: «за вычетом цены регистрации доменов в подарок». Это что за цена регистрации домена в подарок? Как подарок может вообще иметь какую-либо цену? Вот страница для тех кто не верит.+# Найти в скриптах функцию [http://php.net/fgetcsv fgetcsv()] и перед ее вызовом вставить код:
-http://www.1gb.ru/default.aspx?ti=6&hti=104+ setlocale (LC_ALL, 'ru_RU.cp1251');
-То есть они честно говорят, что их подарок имеет некую цену регистрации. Хорош подарок. Это как парень, отбирающий у девушки свои подарки после расставания.+ 
-Сама эта фраза по себе показывает, в чем состоит мошенничество этого ресурса.+== Проблема 2 ==
-Ну ладно хитрый маркетинговый ход скажите вы. Но не все так просто.+'''Симптомы'''.
-Как только вы закажите там услуги хостинга, то вы выясняете, что 30% времени ваш сайт не работает вообще. Он висит или отвратительно долго грузится. Когда вы начинаете этому возмущаться, то вам предлагают резво вернуть деньги. Но вы должны выполнить следующие условия: «Прежде всего, необходимо убедиться, что в личном кабинете заполнены все реквизиты клиента» +# При импорте страница зависает, отображает "белый лист", ошибки про нехватку памяти или про превышение максимально допустимого времени исполнения.
-И тут есть ключевой момент. Если вы заполните эти данные, то на вас сразу же оформят домен. Без этих данных оформить домен они не могут. А как только оформят домен (который дается типа в подарок :-)) вы уже лишитесь 750 рублей. И домен типа обратно перерегистрировать нельзя. И жулик с песнями бежит делить капусту, которую получил продав домен с наваром 350 рублей. А при оптовых ценах еще выше. А вы остаетесь с носом или с доменом. Переплатив за него почти половину стоимости. В любом случае ни о каком хостинге говорить не приходится.+'''Решение'''.
-А они еще спрашивают сами себя, а почему такие низкие цены? Да вот почему, потому что ничего за эти деньги они не делают. Халявный сыр как известно в мышеловке.+# Найти функцию <code>GetInt4d()</code> и заменить ее на:
 + 
 + function GetInt4d ($data, $pos) {
 + // by Andreas Rehm
 + $_or_24 = ord($data[$pos+3]);
 + if ($_or_24>=128) $_ord_24 = -abs((256-$_or_24) << 24);
 + else $_ord_24 = ($_or_24&127) << 24;
 +
 + return ord($data[$pos]) | (ord($data[$pos+1]) << 8) |
 + (ord($data[$pos+2]) << 16) | $_ord_24;
 + }
 + 
 +[[Категория:PHP]]
 +[[Категория:Проблемы с известными скриптами]]

Текущая версия

[править] Проблема 1

Симптомы.

  1. При импорте данных из файла, результат парсинга даннных не отображается на странице.

Решение

  1. Найти в скриптах функцию fgetcsv() и перед ее вызовом вставить код:
setlocale (LC_ALL, 'ru_RU.cp1251');

[править] Проблема 2

Симптомы.

  1. При импорте страница зависает, отображает "белый лист", ошибки про нехватку памяти или про превышение максимально допустимого времени исполнения.

Решение.

  1. Найти функцию GetInt4d() и заменить ее на:
function GetInt4d ($data, $pos) {
	// by Andreas Rehm
	$_or_24 = ord($data[$pos+3]);
	if ($_or_24>=128) $_ord_24 = -abs((256-$_or_24) << 24);
	else $_ord_24 = ($_or_24&127) << 24;
	
	return ord($data[$pos]) | (ord($data[$pos+1]) << 8) |
	(ord($data[$pos+2]) << 16) | $_ord_24;
}
Личные инструменты