Category Archives: Web

Web

Използване на аргументи в php command line

Реших да напиша как се използват и викат аргументи от командния ред(php-cli) на PHP, че явно не е толкова популярно. Масива в които се съхраняват аргументите е $argv. За извеждане на аргументите може да ползвате print_r($argv) както  и други … .

Пример за използване на аргументи в php:

Код за primer.php

<?php
print_r($argv);
?>

При изпълнение на php primer.php edno dwe tri

Ще изведе:

Array
(
[0] => primer.php
[1] => edno
[2] => dwe
[3] => tri
)

Това е просто за тези които го знаят :)

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

Два добри плъгина (NextGen gallery и youtuber) за WordPress.

Преди малко ми се наложи на една wordpress платформа да предоставя възможност на потребителите да качат снимки като галерия(не говоря за стандартната) и да добавят youtube клипове.

Потърсих в http://wordpress.org/extend/plugins/ и намерих следните два плъгина.:

Първия плъгин е добър за галерия и се казва NextGEN Gallery
Инсталира се по нормалния метод. При галерията NextGEN gallery добавянето на снимки става абсолютно лесно както и активирането на галерията- използват се двата тага: [nggallery id=x] или [slideshow id=x]. Галерията има и други тагове които оставам на вас да разгледате сами.

Втория плъгин е за добавяне на youtube клипове с име Youtuber.
Инсталирането на Youtuber става отново по нормалния начин а използването става по …. -- отново по -- лесен начин, а именно:Ако искате да добавите клип с URL:  http://www.youtube.com/watch?v=cNVFiZHFLSE тогава копираме стойнсотта на аргумент "v" , а именно "cNVFiZHFLSE" и го поставяме в тагът на youtuber или [youtube]cNVFiZHFLSE[/youtube]

О забравих да споделя, че авторите на плъгините са:
NextGent gallery -- Alex Rabe
Youtuber-- Roy Tanck

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

Увеличаване на maxMacroLength във Firefox

Скоро ми се наложи да ползвам макрота във Firefox и ми извика, че стойността на maxMacroLength била ниска и за целта трябваше да добавя стойност 5000 в моя случай. Ето как става това:

1. Type in the url adress bar: about:config and press the Enter key. That opens

Въведете URL адрес(в адрес бара): about:config и натиснете [Enter] . Ще ви се отворят настройките на Firefox. След това десен бутон-> "New"->"Integer" и въвеждате "extensions.imacros.maxMacroLength" със стойност 5000.

Ето и снимка на финалния резултат:

firefox_macros-parameter1

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

Безплатно сваляне на клипове от vbox7 или проект abox7

Днес стартирах един нов проект в помощ на vbox7 и в частност на потребителите им. Идеята е да се направи мини сайт общност на потребителите на vbox7. За начало се предоставя възможност за безплатно теглене на видео клипове от vbox7.

Линк към сайта тук: www.abox7.com

Линк към услугата: теглене на клипове от vbox7.com

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

Remote file exist в php

Понеже един колега беше коментирал, че имал затруднения с проверка на файл намиращ се на отдалечен сървър.  Понеже днес ми се наложи и на мен да си го припомня ето за него и всички които имат затруднения с  remote file exist on php следните два примера:

Пример 1:

$r_url="example.com";
$r_file="example_dhstudio_kakvo_referati.pdf";

$fh = fsockopen($r_url, 80);
if ($fh)
{
fputs($fh,"GET ".$r_file." HTTP/1.1\nHost:".$r_url."\n\n");
if (fread($fh, 22) == "HTTP/1.1 404 Not Found")
{ echo "[NOT FOUND]";
} else { echo "[FOUND]";exit;    }
};

Пример 2:

$url="http://example.com/example_dhstudio_kakvo_referati.pdf";
if (@fclose(@fopen("$url", "r")))   { echo "$url -FOUND<br>";exit; } else { echo "$url -- NOT FOUND<br>"; };

Друг метод които ми допада повече е :

function check_remote_file_exist($url)
{
$ch = curl_init("$url");
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_exec($ch);
$retcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($retcode == 200 ) { return 1; } else {return 0; };
};
echo check_remote_file_exist("http://mpetrov.net/wp-content/uploads/2008/12/Martin.jpg");

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

Нов проект на един приятел-Университети в България

Днес един приятел стартира нов проект за българските университети. В сайта може да намерите връзки към официалните страници на всеки университет в България, информация за тях и всичко необходимо. Името на проекта е избрано доста умело, а именно: www.universiteti.org

Всеки които желае да получи повече информация за университетите в България може да посети този сайт.

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|ereg replace + case-insensitive на cp1251 текст

Лого на PHPДо сега хиляди пъти съм заменял текст със друг , но този път ми възникна един проблем представен като пример:
$str="Мартин Иванов Петров  | мартин иванов петров";

$str=$str_replace("/Мартин/i","MARTIN",$str);

echo $str;
В този случай би трябвало да ми изведе

"MARTIN Иванов Петров  | MARTIN иванов петров"

Но ми извежда
"Мартин Иванов Петров  | MARTIN иванов петров";

Има проблем с локала.

Такъв проблем имаше и някакъв грък писал запитване на php devs, но краен отговор не получи.  Както и да е.

Решението е ( за различните енкодинги друг локал се сетва):

<?php
setlocale(LC_ALL, 'bg_BG');
?>

PS: Същия проблем имаше един приятел когато искаше да направи cp1251 текст с големи букви и не ставаше.
Ето го решението:

echo strtoupper("Преди setlocale-<i>Мартин Петров</i><br>");
setlocale(LC_ALL,"bg_BG");
echo strtoupper("Преди setlocale-<b>Мартин Петров</b><br>");

Резултат:

Преди SETLOCALE-Мартин Петров
ПРЕДИ SETLOCALE-МАРТИН ПЕТРОВ

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

Блогът в DMOZ

dmozТоп новина за деня: Блогът е добавен в dmoz.org

За тези които незнаят какво е DMOZ:

DMOZ е абревиатура, която означава “Directory.MOZilla”. Другото име на тази директория е ODP (Open Directory Project). DMOZ представлява многоезична отворена Интернет директория, собственост на Тим Уорнър, която се поддържа от общност на доброволни редактори.

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

Онлайн Камера в гр. Добрич

Онлайн Камера ДобричВ момента онлайн камера от Добрич може видите тук: http://dobrich24.com/dobrich_live

Днес оправихме проблема с камерата, че не работеше. Проблема беше, че кабела се беше разпоил и сега всичко е наред. Камерата в гр. Добрич може да се гледа ето тук:


Онлайн Камера в гр. Добрич

Хайде приятно гледане и дано камерата ви е била и бъде полезна.

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

WordPress <= 2.8.3 Remote admin reset password

wordpress-hacks-tricksДнес един пич: "Laurent Gaffié" откри малка пролука в WordPress 2.8.3 ,чрез която може да се ресетне паролата на акаунт: admin. Експлойта е публикуван в milw0rm-> WordPress <= 2.8.3 Remote admin reset password .  Системите които имат тази пролука са WordPress 2.8.3 и по- старите версии.

Проблем:

Отваряте следния адрес: http://blogname.com/wp-login.php?action=rp&key[]=

По този начин паролата ще бъде ресетната на акаунт "admin" без никакво потвърждение.

Решение 1:

Update от WordPress 2.8.3 на WordPress 2.8.4

Решение 2:

Необходимо е да се редактира файл: wp-login.php и да се промени реда: "if ( empty( $key ) )" със "if ( empty ( $key ) || is_array( $key ) )"

Ако няколко такива блога на WordPress 2.8.3 като мен например може да ползвате моето решение на проблема, а именно, чрез find намирам wp-login и след това презаписвам стария ред с новия:

find $PWD -type f -name "wp-login.php" -exec sed -i 's/if ( empty( $key ) )/if ( empty ( $key ) || is_array( $key ) )/g' {} \;

Надявам се тази публикация е била полезна.

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