Хорошие трояны по нескольку лет живут, особенно веселые экземпляры на так называемых сборках XP. Возьмите любой из них, постарее. И протестируйте - десяток можно наловить, а при хорошем раскладе - и поболее.
Подниму тему - скоро будет время на крупный проект, обращайтесь.
ТС, модернизация в РФ - это постройка сколково. А не системы ЧПУ :)
У меня год назад дернули короллу, угнали в 1 час ночи, обнаружилась пропажа в 8-30.
Не факт, что телефон поможет - у меня тарифа со слежением не было, но был телефон с симкой мегафона... результат - нулевой. Мне сказали, в каком направлении в область ушла машина :) и в какое время пропал сигнал. Там по карте - примерно 20 кв.км.
ЗЫ И еще - я думаю, вам позвонят через недельку.
1. Количество записей в запросе отдаст вам функция
mysql_num_rows($qGetCloud), count можно исключить.
2. в запросе с датой, если дата типа дататайм, используйте штамп TIMESTAMP
Несколько раз просили прислать им пример кода в личку | на почту. Видимо, уровень программиста можно оценить по внешнему виду кода. Решил выложить примеры здесь, надеюсь, модераторы не удалят его :)
Это два базовых класса моделей для работы в Zend Framework, они взаимосвязаны.
Первый
<?php # Ordered.php abstract class Jest_Model_Ordered extends Jest_Model_DbRow { /** * Имя поля бызы данных по которому вычисляется порядок * * @var string */ protected $_orderColumn = 'ord'; /** * Выражение выборки данных из базы. * * @return Zend_Db_Table_Select */ protected function _getSelect() { return $this->dbTable()->select(); } /** * Возвращает количество записей в базе * * @return Ambigous <Zend_Db_Table_Row_Abstract, NULL> */ private function _getCount() { $select = $this->_getSelect(); $table = $select->getTable(); $select->from($table, 'COUNT(*)'); $result = $table->fetchRow($select); return $result ['COUNT(*)']; } /** * Устанавливает порядковый номер для новой записи. */ public function save() { if ($this->isNew()) { $this->_row->{$this->_orderColumn} = $this->_getCount(); } parent::save(); } /** * Перенумеровывает оставшиеся элементы */ public function delete() { $select = $this->_getSelect(); $select->where($this->_orderColumn . ' > ?', $this->_orderColumn); $table = $select->getTable(); $table->update(array( $this->_orderColumn => new Zend_Db_Expr($this->_orderColumn . ' - 1')), $select->getPart(Zend_Db_Select::WHERE)); parent::delete(); } /** * Возвращает элемент с указанным порядковым значением. * * @param unknown_type $orderValue Порядковое значение * @return Ads_Model_Sub|NULL */ private function _getSibling($orderValue) { $select = $this->_getSelect(); $select->where($this->_orderColumn . ' = ?', $orderValue); $row = $select->getTable()->fetchRow($select); if ($row) { return new Ads_Model_Sub('row', $row); } else { return null; } } /** * Возвращает следующий по порядку элемент. * * @return Ambigous <NULL, Ads_Model_Sub> */ public function next() { return $this->_getSibling($this->{$this->_orderColumn} + 1); } /** * Возвращает предыдущий по порядку элемент. * * @return Ambigous <NULL, Ads_Model_Sub> */ public function prev() { return $this->_getSibling($this->{$this->_orderColumn} - 1); } /** * Перемещает элемент вверх в порядковом списке */ public function moveUp() { $prev = $this->prev(); if ($prev) { $this->{$this->_orderColumn} = $this->{$this->_orderColumn} - 1; $prev->{$this->_orderColumn} = $prev->{$this->_orderColumn} + 1; $this->save(); $prev->save(); } } /** * Перемещает элемент вниз в порядковом списке */ public function moveDown() { $next = $this->next(); if ($next) { $this->{$this->_orderColumn} = $this->{$this->_orderColumn} + 1; $next->{$this->_orderColumn} = $next->{$this->_orderColumn} - 1; $this->save(); $next->save(); } } }
Второй:
<?php #DbRow.php abstract class Jest_Model_DbRow { /** * Запись базы данных * @var Zend_Db_Table_Row */ protected $_row = null; /** * Внутренне хранилище свойств * @var array */ protected $_properties = array(); /** * Признак нового объекта, ещё не сохраненного в базе. * @var bool */ private $_isNew = false; /** * Волшебный конструктор :) * Вызывает метод инициялизации с именем - _init%ПервыйАргумент% */ public function __construct() { $args = func_get_args(); $func = array_shift($args); call_user_func_array(array( $this, $funcName = '_init' . ucfirst($func)), $args); } /** * Инициализаци новой модели */ protected function _initNew() { $this->_row = $this->dbTable()->createRow(); $this->_isNew = true; } /** * Инициализация по ключу $id * @param int $id */ protected function _initId($id) { $this->_row = $this->dbTable()->find($id)->current(); } /** * Инициализаци напрямую из записи базы данных * @param Zend_Db_Table_Row $id */ protected function _initRow($row) { $this->_row = $row; } /** * Функция должна возращать таблицу базы данных в которой хранится модель * @return Zend_Db_Table_Abstract */ abstract protected function dbTable(); /** * Заполняет модель из массива. * ! Заполняются только поля данных в записи таблицы * * @param array $data */ public function fill($data) { foreach ( $data as $key => $value ) { if (isset($this->_row->$key)) { $this->_row->$key = $value; } } } /** * Сохранение данных в таблицу */ public function save() { $this->_row->save(); $this->_isNew = false; } /** * Удаляет модель из таблицы */ public function delete() { $this->_row->delete(); } /** * Тест на целостность модели */ public function isValid() { return ($this->_row !== null); } /** * Заполняет форму данными из записи базы данных * @param Zend_Form $form */ public function populateForm(Zend_Form $form) { $form->populate($this->_row->toArray()); } /** * Реализует магию :) чтения свойств модели. * Порядок следующий: * 1. Из записи базы данных * 2. Из хранилища свойств * 3. Через метод доступа _get%ИмяСвойства% * * @param string $name * @return multitype:|unknown|NULL */ public function __get($name) { // пробуем получить из записи базы данных if (isset($this->_row->$name)) { return $this->_row->$name; } // пробуем получить из хранилища свойств if (array_key_exists($name, $this->_properties)) { return $this->_properties [$name]; } // пробуем через метод доступа $method = '_read' . ucfirst($name); if (method_exists($this, $method)) { $result = $this->$method(); if ($result !== null) { // сохраняем в хранилище свойств $this->$name = $result; } return $result; } // ничего не нашли :) } /** * Реализует магию :) записи свойств модели. * Порядок следующий: * 1. В запись базы данных * 3. Через метод доступа _set%ИмяСвойства% * 2. В хранилище свойств * * @param string $name * @param unknown_type $val */ public function __set($name, $val) { if (isset($this->_row->$name)) { $this->_row->$name = $val; } else { $method = '_write' . ucfirst($name); if (method_exists($this, $method)) { $this->$method($val); } else { $this->_properties [$name] = $val; } } } /** * Удаляет свойство из хранилища * * @param string $name */ public function __unset($name) { unset($this->_properties [$name]); } /** * Возвращает все свойсва в виде массива * * @return multitype: */ public function toArray() { return array_merge($this->_row->toArray(), $this->_properties); } /** * Возвращает true если это новый экземпляр модели, * еще не сохраненный в базе данных * * @return bool */ public function isNew() { return $this->_isNew; } /** * Преобразует список записей $rowset в масив классов $className * * @param Zend_Db_Table_Rowset_Abstract $rowset * @param string $className * @return array of $className objects */ static public function transformRowset($rowset, $className) { $result = array(); foreach ( $rowset as $row ) { $result [] = new $className('row', $row); } return $result; } }
Нужно вот так:
<?phpif (isset ( $_POST ['one'] )) { $one = $_POST ['one'];}if (isset ( $_POST ['two'] )) { $two = $_POST ['two'];}if (isset ( $_POST ['onevstwo'] )) { $onevstwo = $_POST ['onevstwo'];}$address = 'mail@yandex.ru';$sub = "Бронирование номера";$mes = "Стандартный одноместный номер: $one\nСтандартный двухместный номер: $two\nОдноместное размещение в двухместном номере: $onevstwo";if (mail ($address,$sub,$mes,"Content-type:text / plain; charset = windows-1251\r\nFrom:$email")){echo "";}else{echo "<p>Сообщение не отправлено</p>";}
На локале работает, потому что по умолчанию переменные из массива $_POST передаются :)
У меня на FreeBSD была похожая ситуация, до тех пор, пока я в /etc/hosts не вписал IP сервера
А длина и ширина куска обоев в рулоне не участвует совсем в расчете? Или она у всех всегда одна и та же?
Заказы временно не принимаю - занят до 25 сентября 2010 года