Category Archives: Web

Web

Проблеми при php скриптове които ползват много памет

Всъщност тук ще обсъдя случаите в които се пише php скрипт при изпълнението на които се извежда съобщение като:" Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 500520576 bytes) in /var/www/a.php on line 4" или с няколко думи скрипта използва повече памет от колкото му е заделена предварително. Идеята тук е защо излиза това съобщение и  как да го поправим(действието :) ).

1. Предварително заделенета памет се определя от конфигурационния файл /etc/php5/php.ini) php.ini :

memory_limit = 32M      ; Maximum amount of memory a script may consume (32MB)

В този конфигурационен файл паметта която може да използва php скрипт е максимум 32 MB. Тази стойност може да се променя разбира се.

След промяна в php.ini трябва да се рестартира apache2. След това може да се изпълни phpinfo(); и ще видите новата заделена памет за php/скрипт.

2. Друг вариант за промяна на memory_limit е за при php5-cli (command-line interpreter for the php5 scripting language) или пример:

php -d memory_limit=512M a.php

По този начин при изпълненито на a.php се заделя 512 MB памет като се пренебрегва тази стойност от php.ini

3. Интересна функция в php е memory_get_usage() която връща текущата използва памет от php скрипта:

<?php

echo memory_get_usage() . "\n"; // 48504

$a = str_repeat("mpetrov.net",100104 );

echo memory_get_usage() . "\n"; // 1150084

unset($a);

echo memory_get_usage() . "\n"; // 48504

?>

По този начин може да се направи извод колко памет ползва php от самото php. Последния пример показва всъщност, че трябва да се unset всички променливи които няма да се ползват повторно за да не заемат памет :)

Извод: Бяха разгледани няколко причини и решения за грешката в php: Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 500520576 bytes)

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

php функция за извеждане на дублиращи елементи от масив

Търсих вградена функция на PHP за извеждане на дублиращите елементи в конкретен масив, но не успях да намеря такава. Има за извеждане на уникалните и т.н. познатите …, но точно такава не успях да намеря. Затова реших да си напиша такава(Супер дълга и сложна е :) )(Обичам простите, прозрачни и ясни неща):

<?php

function arrayDuplicate($array)
{
return array_unique(array_diff_assoc($array1, array_unique($array1)));
};
?>

Пример:

Код:

<?php
$arr1 = array('foo', 'bar', 'xyzzy', '&', 'xyzzy',
'baz', 'bat', '|', 'xyzzy', 'plugh',
'xyzzy', 'foobar', '|', 'plonk', 'xyzzy',
'apples', '&', 'xyzzy', 'oranges', 'xyzzy',
'pears','foobar');

$result=arrayDuplicate($arr1);
print_r($result);exit;
?>

Изход:

Array
(
[4] => xyzzy
[12] => |
[16] => &
[21] => foobar
)

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Проблеми с preg_replace в php

Ще бъдат кратък. Когато се ползва preg_replace да се използва преди това изолиране на спец символите:

$string-shit = preg_quote($string, '/');
$string = preg_replace("/^$string_shit/", ", $string);

Идеята е да се избегнат някои грешки като тези:

Warning: preg_replace(): Compilation failed: unmatched parentheses at offset …
Warning: preg_replace(): Compilation failed: missing ) at offset …

Втори вариант:

$last_element=str_replace("/","\/",$last_element);
$last_element=str_replace(")","\)",$last_element);
$last_element=str_replace("(","\(",$last_element);

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Уеб базирана тулка за събмит на сайт

ТулкаВъв връзка с поста на Мартин -- 9 бързи, автоматични, dofollow линка , реших и аз да направя една малко по- функционална уеб форма за автоматично събмитване. Тя се основава на JS т.е. всички сайтове към които ще бъде събмитнат сайта ще бъдат отворени в нови прозорци. Не няма да ги затваряме на ръка(предполагам сте разбрали, че обичам автоматизацията). Още в самото начало където въвеждате уеб сайта за събмит има възможност за определеня на време- Това време определя след колко милисекунди да се затворят всичките тези прозорци(близо 30). След като приключите със събмита на текущия уеб сайт и желаете да събмитнете друг слизате в долницата на страницата и виждате бутона: New Submit или просто натискате Back. Това е :)
Връзка към тулката- ТУК

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Как се прави дробна черта в HTML

Всеки знае как да прави горни и долни индекси в HTML, но не всеки знае как да направи дробна черта в HTML. Това е супер просто, особено когато се знае :)

Пример 1: H<sub>2</sub>0
Изход 2: H20

Пример 2: S <sup>2-</sup>
Изход 2: S 2-

Пример за дробна черта: NH<sup>+</sup>&frasl;<sub>4</sub>
Изход за дробна черта:  NH+4

Извод: Дробна черта в HTML: &frasl;

&frasl;
VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

HEX цветове в HTML

Цветове и техните HEX стойности в HTML:) Както всяко нещо така и WEB се нуждае от своят цвят :) . Луд на шарено се радва- много луди на този свят :)

Флаш 1:

Флаш 2:

VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Активиране на Paypal акаунт с карта

Видях, че доста хора са се затруднили при обвързването на кредитна или дебитна(с възможност за електр. операции) в paypal акаунт. Ще опиша в няколко стъпки какво се прави за да нямате главоболия:

1. Изпращате заявка от своя paypal акаунт за обвързване на своята карта(въвеждате номера на картата, кога изтича и ccv)2. След като изпратите заявката ще ви бъдат "взети" временно 2.94 лв.  Тези 2.94 лв. ще ви бъдат върнати след като си потвърдите картата в следващата стъпка.
Прилагам снимка от своя DSK Direct(ползвам виртуална карта на ДСК):

paypal_kod_potwryjdenie
Код за потвърждение на Карта в PayPal

3. След няколко дни когато банката осчетоводи транзакцията ще можете да видите своя номер на транзакцията изпратен от PayPal(четири цифрено число). След като видите своето четирицифрено число трябва да го въведете в своя PayPal акаунт. С този код се потвърждава картата и до 24 часа максимум ще можете да я ползвате от PayPal.

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Излезе Quotes Collection 1.3.6

Днес излезе Quotes Collection 1.3.6. Преди време бях им изпратил българска транслация и виждам, че са я добавили. Надявам се ,че преводът е бил успешен понеже нямах особено време което да му отделя. Ако някой установи нередност в българската версия може да ми пише репорт или директно на Srini. В новата версия 1.3.6 са добавени Български и Чешки език. Други промени няма. Ако желаете да прочетете пълната публикация на Srini, моля натиснете ТУК.

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Как да сваляме клипчета от vbox7

Вчера реших да направя малко подобрения на свободния проект abox7 за лесно сваляне на клип от vbox7. Проектът е www.abox7.com и е един вид фенски сайт-не официален и необвързан официално с vbox7. Има за цел да образува една vbox7 общност, да се предоставя информация за сайта, потребителски мнения и коментари както и безплатно сваляне на клипове :)

Видео уроци:

1. Как да сваляме клипове от vbox7 (клипът се съдържа във vbox7):

2. Как да сваляме клипове от vbox7 (клипът се съдържа във youtube):

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Видео презентации на referati.org

Вдъхновен от предния пост за видео презентациите на kakvo.org реших да направя и такива за referati.org . Надявам се да бъдат полезни на потребителите. Отново съм ги качил във vbox и youtube:

Видео презентации на referati.org във Vbox7:

-- Как да сваляме реферати Безплатно- www.referati.org
-- Referati.org- Презентация на сайт за реферати
-- Безплатно изравняване на химични уравнения- www.referati.org

Видео презентации на referati.org във YoutTube:

-- Презентация на сайт за реферати
-- Как да сваляме реферати БЕЗПЛАТНО
-- Безплатно изравняване на химични уравнения

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)