Ошибка Call to undefined function json_decode() или json_encode() #

Это значит, что у Вас не определяется функция json_decode() или json_encode(). А это может быть в случае если у вас php ниже 5.2.0.

Как это пофиксить без обновления:

Качаем либу http://mike.teczno.com/JSON.tar.gz

Вставляем где нужно:
if( !function_exists('json_encode') ) {
    function json_encode($data) {
        $json = new Services_JSON();
        return( $json->encode($data) );
    }
}

// Future-friendly json_decode
if( !function_exists('json_decode') ) {
    function json_decode($data, $bool) {
        if ($bool) {
            $json = new Services_JSON(SERVICES_JSON_LOOSE_TYPE);
        } else {
            $json = new Services_JSON();
        }
        return( $json->decode($data) );
    }
}


Подключаем либу:
include("JSON.php");


Всо -) пс, ТыЦ Дэсять -)

Все страницы внизу новостей в DataLife #

Открыть show.short.php

Найти
if($pages_count > 10)

Заменить на
if($pages_count > 100000)


А еще немного статистики за 2009:
Все страницы внизу новостей в DataLife

Все страницы внизу новостей в DataLife

WP без MySQL #

Плагин PDO SQLite отлично решает вопрос переходом на файловую базу с нативной поддержкой в PHP
Опять же, бэкап исчерпывается копированием файла.

Перед запуском установки WP разворачиваем содержимое папки из архива в wp-content и пишем в wp-config.php строчку define('DB_TYPE', 'sqlite');

Если вылитает ошибка:
Warning: implode() : Invalid arguments passed in /wp-includes/post.php on line 1762

То, Нужно добавить в функцию escape() в /wp-content/pdo/db.php поддержку массивов:
function escape($string) {
if ( is_array($string) ) {
foreach ( (array) $string as $k => $v ) {
if ( is_array($v) )
$string[$k] = $this->escape( $v );
else
$string[$k] = addslashes( $v );
}
} else {
$string = addslashes( $string );
}
return $string;
}

CSS + PHP #

Style.php

Вместо привычного нам расширения .css, мы подключим к страничке файл .php

Тип документа

В самом начале файла style.php необходимо указать, что на выходе нам все-таки нужен файл стилей, т.е. указываем тип документа:
header("Content-type: text/css; charset: UTF-8");
?>

Вводим переменные

Теперь установим значения для нескольких переменных, например такие:
header("Content-type: text/css; charset: UTF-8");

$brandColor = "#990000";
$linkColor = "#555555";
$CDNURL = "http://cdn.blahblah.net"
?>

Использование переменных

Достаточно просто вывести обозначенные переменные в необходимых местах стилей:
#header {
background: url("/images/header-bg.png") no-repeat;
}

a
color: ;
}
...
ul#main-nav li a {
color: ;
}

Другие идеи использования CSS файла сгенерированного с помощью PHP
Сжатие CSS файла с помощью PHP
Теоретически, вы даже можете использовать информацию о User-agent для вывода стилей под конкретный браузер.
В зависимости от сезона года, вы можете менять стили, используя информацию о текущей дате.
Генерировать различные цвета, устанавливать фон случайным образом, и в конце-концов, просто тестировать.

Не работает?

В некоторых случаях (например для реализации нашей идеи в Wordpress), вам возможно потребуется прописать следующие строчки в файле .htaccess (только для Apache):

SetHandler php5-script

При этом файл стилей оставляем с расширением .css, а .htaccess кладем в туже папку, где и стили.

Фап в интерпретатор PHP #

Еще регулярные выражения и парочка полезных функций, честно скопипастеный где-то на просторах интернета:

Яндекс тИЦ
function cy($url){
preg_match("/value=\"(.\d*)\"/", join("", file('http://bar-navig.yandex.ru/u?ver=2&show=32&url=http://'.$url.'/')), $tic);
return($tic[1]!=""?$tic[1]:0); }


Яндекс число страниц в индексе
function ya_stat($url){
$str=file_get_contents("http://yandex.ru/yandsearch?numdoc=10&serverurl={$url}");
preg_match("\/(.*)нашл(.*)сь(.*)страниц(.*)/s", $str, $find); $res=$find[3];
if(preg_match("/(.*)ничего не найдено(.*)<\/title>/s", $str)) {$res=0;}<br> $res=str_replace(" ","",$res);<br> $res=str_replace("млн","000000",$res);<br> $res=str_replace("тыс.","000",$res);<br> return $res;} </div> <br> <br> <b>Веб прокси</b><br> <div class="scriptcode"> echo file_get_contents($_GET['q']);<br> $content=file_get_contents("http://урл.сайта/имя.скрипта?=".$url); </div> <br> <br> <b>LiveInternet статистика</b><br> <div class="scriptcode"> function listat($url){<br> $content = file_get_contents("http://counter.yadro.ru/values?site=".$url);<br> preg_match_all("|LI_([^ ]+) = (\d*);|",$content,$ok);<br> for($i=0; $i<count($ok[1]); $i++) $info[$ok[1][$i]]=$ok[2][$i];<br> return $info;}<br> <br> $ff=listat($url);<br> $w_vis=floor($ff[week_vis]/7);<br> $w_hit=floor($ff[week_hit]/7);//Средняя посещаемость за последнюю неделю<br> $li_vis=$ff[day_vis];<br> $li_hit=$ff[day_hit];//И дневная посещаемость<br> echo "Week $w_vis / $w_hit, today $li_vis / $li_hit"; </div> <br> <br> Информация для счетчика <b>LiveInternet</b>. Показывается для всех сайтов, которые не закрыли отображение инфы на счетчике (даже если сама статистика закрыта). Удобно как анализировать чужие сайты, так и просматривать суммарную посещаемость своих. </div> <div class="comm"> <br> <a href="/blog/">Блог</a> » <a href="/blog/php/">PHP</a> / Теги: <a href="/tags/php/">php</a>, <a href="/tags/%F0%E5%E3%F3%EB%FF%F0%ED%EE%E5+%E2%FB%F0%E0%E6%E5%ED%E8%E5/">регулярное выражение</a>, <a href="/tags/%EA%EE%E4/">код</a>, <a href="/tags/%F1%EA%F0%E8%EF%F2%FB/">скрипты</a> / 13.11.09 / <a href="/218-fap-v-interpretator-php.html#comment">Комментировать [0]</a> </div> </div> <div class="story"> <h3>Регулярные выражения <a href="/217-regulyarnye-vyrazheniya.html" title="постоянная ссылка на пост">#</a> </h3> <div id="news-id-217" style="display:inline;"> Последнее время очень часто приходиться сталкиваться с регулярными выражениями. И для понимания они очень сложны. Повторить по памяти выражение я не смогу поэтому выложу сюда как записку для себя и как заметку для вас:<br> <br> <b>Удалить определенную ссылку</b>:<br> <div class="scriptcode"> $text=preg_replace("~<a href=\"http://www\.aaa\">[^<]+?</a>~",'',$text); </div> <br> За это решение спасибо setty<br> <br> <b>Удалить спецсимволы</b>:<br> <div class="scriptcode"> $text = preg_replace ("~(\\\|\*|\?|\[|\?|\]|\(|\\\$|\))~", "",$text); </div> <br> <br> Вывести число подписчиков в <b>FeedBurner</b>:<br> <div class="scriptcode"> function fb($feed){<br> $s=file_get_contents("http://feedburner.google.com/api/awareness/1.0/GetFeedData?uri={$feed}");<br> preg_match('/circulation="(\d+)"/', $s, $a);<br> return $a[1];} </div> <br> <br> Выводим <b>Alexa Rank</b>:<br> <div class="scriptcode"> function alexa($url) {<br> preg_match('#<div class="data .+?">(.*?)</div>#si', file_get_contents("http://www.alexa.com/siteinfo/{$url}"), $a);<br> return trim(str_replace(",","",strip_tags($a[1])));} </div> </div> <div class="comm"> <br> <a href="/blog/">Блог</a> » <a href="/blog/php/">PHP</a> / Теги: <a href="/tags/%F0%E5%E3%F3%EB%FF%F0%ED%FB%E5+%E2%FB%F0%E0%E6%E5%ED%E8%FF/">регулярные выражения</a>, <a href="/tags/%EF%F5%EF/">пхп</a> / 12.11.09 / <a href="/217-regulyarnye-vyrazheniya.html#comment">Комментировать [0]</a> </div> </div> <div class="nav" align="center"> <a href="/blog/php/page/3/">Назад</a> <a href="/blog/php/page/1/">1</a> <a href="/blog/php/page/2/">2</a> <a href="/blog/php/page/3/">3</a> <span>4</span> <span>Далее</span> </div> </div> </div> </div> <div id="bottom"> <div id="bottomwrap" class="clearfix"></div> </div> <div id="footer"> <div id="footerwrap"> <div class="left"> <ul> <li><a href="/" title="На Главную">Домой</a></li> <li><a href="/portfolio/" title="Портфолио">Портфолио</a></li> <li><a href="/blog/" title="Блог">Блог</a></li> <li><a href="/themes/" title="Шаблоны">Шаблоны</a></li> <li><a href="/contacts.html" title="Связь">Связаться</a></li> </ul> <div style="float:right; padding:12px 10px 0 0;"></div> </div> <div class="right"> <p>2008 - 10 © <a href="/" title="Создание сайтов | Разработка сайтов">VESELOV.SUMY.UA</a><br> Пока Вы смотрите, Я — делаю -)<br> utz0r2@ya.ru | icq 210-283-011</p> </div> </div> </div> <div id="loading-layer" style="display:none;font-family: Verdana;font-size: 11px;width:200px;height:50px;background:#FFF;padding:10px;text-align:center;border:1px solid #000"> <div style="font-weight:bold" id="loading-layer-text"> Загрузка. Пожалуйста, подождите... </div> <br> <img src="/engine/ajax/loading.gif" border="0" alt=""> </div> <script language="javascript" type="text/javascript"> //<![CDATA[ <!-- var dle_root = '/';var dle_admin = '';var dle_login_hash = '';var dle_skin = 'ves';var dle_wysiwyg = 'no';var quick_wysiwyg = '0';var menu_short = 'Быстрое редактирование';var menu_full = 'Полное редактирование';var menu_profile = 'Просмотр профиля'; var menu_fnews = 'Найти все публикации';var menu_fcomments = 'Найти все комментарии';var menu_send = 'Отправить сообщение';var menu_uedit = 'Админцентр';var dle_req_field = 'Заполните все необходимые поля'; var dle_del_agree = 'Вы действительно хотите удалить? Данное действие невозможно будет отменить';var dle_del_news = 'Удалить новость';var allow_dle_delete_news = false; //--> //]]> </script> </body> </html>