Программирование, СМС, Webasyst, Drupal, PHP, личная эффективность

Раздел Март, 2010

 
 

Полезные php константы

Март 29, 2010   |   Категории: php, веб мастерим

Есть несколько полезный магических констант в php которые я сдесь опишу. Магические константы начинаются с двух символов подчеркивания и заканчиваются тоже с двух символов подчеркивания.

В данной заметке рассмотрим 3 константы

__LINE__
__FILE__
__DIR__

По названию, думаю должно быть сразу понятно для чего эти константы. Но кто не понять объясню –

__LINE__ выводим номер строки, в которой эта константа находится.
__FILE__ выводит файл текущего документа.
__DIR__ папка текущего файла.

Рассмотрим на примере две первые константы. Например, у нас есть самописная функция, в которой вызывается запрос в базу, а код запроса передается через параметры функции.

function db_query($sql) {
$q=mysql_query($sql) or die(mysql_error()."
<strong>"
.__file__. " On line - ".__line__."</strong>");
return $q;
}

В функции выше при ошибке вызывается функция die, которая прекращает работу скрипта и выводит сообщение, которое определенно в ее параметрах. Только в примере выше номер строки в которой произошла ошибка будет выведена неправильно, так как вызов функции происходит в любом месте скрипта или даже в другом файле.

функция, что выше будет всегда показывать одну и туже строку и один и тот же файл, так как эти константы определенны внутри функции. Чтобы вывод ошибки правильно работал нужно переписать так функцию -

function db_query($sql, $file=__file__, $line=__line__) {
$q=mysql_query($sql) or die(mysql_error()."
<strong>"
.$file. " On line - ".$line."</strong>");

return $q;
}

Теперь в параметрах функции мы передаем номер файла и номер строки в результате при возникновение ошибки в sql запросе будем знать файл и номер строки где ошибка произошла.


  Читать дальше >> Оставить комментарий  
 
 
 
 

Работаем с фтп – FileZilla

Март 23, 2010   |   Категории: Полезные программы, веб мастерим

Этой статьей начинаю новую рубрику, в которой буду описывать полезные программы для веб разработчика. В этой статье расскажу, как работать с отличным фтп клиентом FileZilla. FileZilla была выбрана мною, после того как я поработал с платным cute ftp pro. В данной статье буду сравнивать эти две программы.

Ну что начнем(let’s go)

Начнем с интерфейса.

В cute ftp есть два окошка – слева навигация по локальным дискам и папкам, а справа навигация по удаленному серверу. В FileZilla это дело несколько расширенно – также само, как и в cute ftp  слева файлы и папки локального компьютера , и удаленного сервера справа, но с каждой стороны есть деление на два окошка.

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

Права доступа на сервере

Важным делом в веб разработке является назначение прав доступа к папке. Это можно сделать в обеих программах. В cuteftp для этого нужно нажать правой кнопкой мыши на файле или папке и в появившемся слое нужно нажать на  последний пункт снизу под названием Properties/CHMOD
(далее…)


  Читать дальше >> 4 Комментариев  
 
 
 
 

Smarty и javascript

Март 17, 2010   |   Категории: Smarty, javascript, веб мастерим

Если вставить в документ Smarty код javascript то будет ошибка по причине того, что очень часто бывает конфликт с символом разделителем. Например, любая многострочная функция в javascript начинается с символа “{“, а такой символ в smarty означает управляющую конструкцию.

Код smarty выполняется на сервере, а javascript код выполняется уже на страничке (через браузер), которую сгенерировал сервер. Но код javascript находится в документе, который выполняется на сервере, поэтому и происходит ошибка, когда сервер генерирует код.

Для того чтобы не было конфликта нужно ставить теги {literal} между javascript кодом. {literal} это открывающий тег, а {/literal} закрывающий. Между этими тегами smarty код не выполняется и поэтому ошибок не будет. Кстати и css код тоже нужно ставить между этими тегами.

Это первая замента про smarty на моем блоге. В будущем буду дальше публиковать заметки или статьи про smarty. Cо smarty серьезно я начал работать, когда начал делать шаблоны для webasyst и для shop-script.

Вначале к smarty пришлось привыкать, так как была привычка работать без шаблонизаторов. Но потом быстро увидел все плюсы smarty.


  Читать дальше >> Оставить комментарий  
 
 
 
 

Обновление drupal

Март 8, 2010   |   Категории: drupal, веб мастерим

У меня обновить drupal получилось несколько в более упрощенном виде, чем написано в статьях, которые я видел в Интернете. Обновлял я не на рабочем сайте, а через Денвер на локальном компьютере. Обновлял я drupal c 6 версии которая вышла почти год назад на последнюю версию шестой версии.

На сайте который я обновлял, стоял русский язык и при обновление я его не переключал на английский. Также на сайте стояла своя тема, свои модули и модули которых не было по умолчанию при установки друпала.

Перед обновлением я сделал резервную копию всех данных, а именно всех файлов сайта и базы данных. Затем скачал последнюю версию друпала и распаковал.

Следующем шагом я не убирал никакие файлы с сайта, а просто скопировал все новые файлы с последней версии друпала и заменил их на сайте. Соответственно заменились все файлы на сайте которые были изначально на сайте, а новые модули и другие файлы которые я ставил на сайт остались.

Затем запустил файл update.php и следовал всем инструкциям, которые там были написаны. И все хорошо обновилось. Для того чтобы посмотреть, какая версия друпала установилась, я зашел в админке по этому /admin/reports/status адресу.


  Читать дальше >> 1 Комментарий  
 
 
 
 

Динамическое добавление элементов в форму через javascript.

Март 3, 2010   |   Категории: javascript, веб мастерим, формы

Как правило формы на сайтах предопределены заранее. Например, в форме регистрации все поля заданы заранее, так как ничего такого, что заранее нельзя предопределить нету.

Динамический ввод новых данных для формы нужны когда, например, нужно ввести сразу много новых данных. Например, есть магазин, в котором есть товар и в этом товаре есть множество размеров и для каждого размера цена разная.

Неудобно по одному создавать такие размеры удобней сразу добавлять любое количество таких размеров в одной форме и за один раз. Сделаю такой пример ниже.

Перед созданием любого проекта даже небольшого желательно распланировать проект. Так что распишем наш пример по шагам, перед тем как будет реализовывать на практике –

1. Первое создадим форму, в которую будет вставлять динамические поля
2. Создадим javascript функцию, которая будет генерировать наши поля.
3. Создадим кнопку, которая будет вставлять динамические поля.

(далее…)


  Читать дальше >> 6 Комментариев  
 
 

 




 

 
 

На сайте freesoftspace.com можно найти много полезных бесплатных программ для веб разработки

 
 


38201110912430120x600.gif
Каталог блогов
2009-2012   При копировании материала активная ссылка на web-grand.ru обязательна