PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (41): « 1 [2] 3 4 5 6 7 8 9 ... » В конец

> Найдено сообщений: 609
-SCHATTEN- Отправлено: 25 Апреля, 2008 - 14:23:39 • Тема: Класс для работы с БД • Форум: Пользовательские функции

Ответов: 20
Просмотров: 1172
Короч быстро не обещаю, но попробую написать как будет время примерно.
-SCHATTEN- Отправлено: 25 Апреля, 2008 - 11:26:21 • Тема: Класс для работы с БД • Форум: Пользовательские функции

Ответов: 20
Просмотров: 1172
Eihwaz пишет:
Так что мечта о гарантированно валидных запросах таки останется мечтой

Не факт. В 5-й версии языка есть очень интересное свойство объектной модели. Оно позволяет работать с тем что возвращается методом. например :

PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. class database
  4. {
  5.         private $select = NULL;
  6.         private $where = NULL;
  7.         public function  __construct() {
  8.                 //connecting to databse, selecting table
  9.         }
  10.        
  11.         public function query( $sql ) {
  12.                 //executing query
  13.         }
  14.        
  15.         public function select( $feilds ) {
  16.                 //operations
  17.                 return $this;
  18.         }
  19.        
  20.         public function where( $where ) {
  21.                 //operations
  22.                 return $this;
  23.         }
  24.        
  25.         public function exec() {
  26.                 $sql = "SELECT ".$this->select;
  27.                 if ( !is_null($this->where) ) {
  28.                         $sql .= "WHERE ".$this->where;
  29.                 }
  30.                 mysql_query( $sql );
  31.         }
  32.        
  33. }
  34. ?>
  35.  


В итоге можно использовать вот так :

PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. $database = new database();
  4. $database->select( params ) // тут возвращается обект базы данных
  5.                ->where( params )
  6.                ->exec(); //выполняем запрос
  7. ?>
  8.  

(Добавление)
Это я примерно написал как можно использовать классы в PHP 5. Так что ошибки искать нестоит, идею поймите ;)
(Добавление)
Точно так же можно делать с такими вещами как limit, join и т.д.
-SCHATTEN- Отправлено: 16 Апреля, 2008 - 12:25:11 • Тема: Класс для работы с БД • Форум: Пользовательские функции

Ответов: 20
Просмотров: 1172
EuGen пишет:
нужно сделать необязательным параметры where, order_by и limit; так как по синтаксису SELECT их указывать необязательно.

Согласен и код
PHP:
скопировать код в буфер обмена
  1. $limit = (isset($limit) ? $limit : '0, 100');

Смысла неимеет, если не передать этот параметр функция напросто отвалится.

Так вроде ничего, тока сразу лучше юзать PHP docs и коменты вида :
PHP:
скопировать код в буфер обмена
  1. <?
  2. /****************************
  3.     * Удаляет данные из таблицы *
  4.     *****************************/
  5.     public function delete_from_table($table, $where) ?>
  6.  

меняй на
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. /**
  4.      *  Удаляет данные из таблицы
  5.      *
  6.      * @param string $table имя таблицы в БД
  7.      * @param string $where условие WHERE для SQL запроса
  8.      * @return bool
  9.      */
  10.     public function delete_from_table($table, $where)...
  11. ?>
  12.  
-SCHATTEN- Отправлено: 14 Апреля, 2008 - 08:48:22 • Тема: Не могу запустить PHP • Форум: Программирование на PHP

Ответов: 2
Просмотров: 239
Ральф
Проэкт TopServer Теперь тут
:
http://www.stpserver.ru/forum/index.php?
-SCHATTEN- Отправлено: 14 Апреля, 2008 - 08:38:13 • Тема: Класс для работы с БД • Форум: Пользовательские функции

Ответов: 20
Просмотров: 1172
Да пожалста.
И мой тебе совет, если решил писать на классах, использую ООП . То не смотри на PHP 4 н для этого не преспособлен практически.

Но с другой стороны ещё очень много хостингов и платформ используют именно PHP 4
-SCHATTEN- Отправлено: 12 Апреля, 2008 - 10:56:37 • Тема: Класс для работы с БД • Форум: Пользовательские функции

Ответов: 20
Просмотров: 1172
Подход оправдан, причем более чем. Такой подход гарантирует валидный SQL что избавит разработчика от необходимости искать ошибку в нем и даст шанст занятся PHP кодом.

Eihwaz пишет:
Согласен, если имелось ввиду, что не имеет смысла ставить условие 'if', потому что функция query_execute либо вернет TRUE, либо сама выведет ошибку.


Да именно это я имел в виду.

Eihwaz пишет:
Нет, в классе все запросы выполняются функцией query_execute, которая, в случае запроса, который привел к ошибке, пишет ошибку в браузер. Т.е., по-сути, тот же дебаггер. А если включен дебаг, то запрос не будет пытаться выполняться - просто выводится сообщение в браузер, вне зависимости от того, правильно он составлен или нет.


Я бы на твоем месте переделал этот метод чтобы метод query_execute возвращал BOOLEAN.

Если ты хочешь написать класс, то это должен быть один класс который можно использовать в разработке. В твоем случае у тебя подключается много сторонних вещей со своим дизайном и т.п. Этого недолжно быть. Хотя бы по 2-м причинам :
1) У разработчика должен быть набор мотодов которыми он пользуется и не задумывается о том что в случае ошибки всё пойдет нетак
2) В большинстве порталов есть свои обработчики ошибок и их вывод
(Добавление)
К вопросу о смысле использования такой модели :
Гораздо проще написать :
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. $select = $db->select()
  4.     ->from(array('p' => 'products'),
  5.         array('product_id'))
  6.     ->join(array('l' => 'line_items'),
  7.         'p.product_id = l.product_id',
  8.         array('line_items_per_product' => 'COUNT(*)'))
  9.     ->group('p.product_id')
  10.     ->having('line_items_per_product > 10');
  11. ?>
  12.  


чем

PHP:
скопировать код в буфер обмена
  1. SELECT p."product_id", COUNT(*) AS line_items_per_product
  2.    FROM "products" AS p JOIN "line_items" AS l
  3.      ON p.product_id = l.product_id
  4.    GROUP BY p.product_id
  5.    HAVING line_items_per_product > 10
-SCHATTEN- Отправлено: 10 Апреля, 2008 - 14:28:29 • Тема: Класс для работы с БД • Форум: Пользовательские функции

Ответов: 20
Просмотров: 1172
Если запрос не выполнился, в браузер выводится сообщение с номером ошибки, текстом ошибки и текстом запроса, который вызвал ошибку.

Это если дебаг включен. А когда пишешь порталы часто возникает ситуация когда надо знать выполнился запрос или нет, и в зависимости от этого решать что делать дальше. А У тебя это проблемотично.

И я у тебя ненашел такой вещи как вернуть объект , у тебя тока массив можно получить
(Добавление)
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. if ($result = $this->query_execute($select_query))
  4. {
  5.     return mysql_fetch_array($result, $type);
  6. }
  7. ?>
  8.  

Условие неимеет смысла. Потому что в $result вернется либо TRUE либо текст Ошибки.
(Добавление)
>Если последний параметр любой функции установить в false, то запрос будет выполняться.

Есть вероятность ошибки БД. поэтому и надо смотеть точно ли выполнился запрос или нет
-SCHATTEN- Отправлено: 10 Апреля, 2008 - 11:55:30 • Тема: Класс для работы с БД • Форум: Пользовательские функции

Ответов: 20
Просмотров: 1172
Сильно не смотрел, так пробежался тока заметил подобные недочеты :
1) Когда код пишешь юзай рефакторинг, ато иногда в отступах путаешься.
2) При выполнении запросов данные нигде не проверяются, тоесть если при использовании не проверить то сайт можно сломать без проблем.
3) Как узнать выполнился ли запрос или нет ?

Потом покопаюсь мож ещё что найду
-SCHATTEN- Отправлено: 09 Апреля, 2008 - 10:29:33 • Тема: Несколько классов может кому-нить помогут. • Форум: Пользовательские функции

Ответов: 0
Просмотров: 271
Начнем пожалуй с
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. class Encryption {
  4.        
  5.         static $cypher   = 'blowfish';
  6.         static $mode    = 'cfb';
  7.         static $key     = 'Тут пишем ключ для кодировки';
  8.        
  9.         public static function encrypt( $plantext ) {
  10.                 $td = mcrypt_module_open( self::$cypher, '', self::$mode, '' );
  11.                 $iv = mcrypt_create_iv( mcrypt_enc_get_iv_size( $td ), MCRYPT_RAND );
  12.                 mcrypt_generic_init( $td, self::$key, $iv );
  13.                 $crypttext = mcrypt_generic( $td, $plantext );
  14.                 mcrypt_generic_deinit( $td );
  15.                 return $iv.$crypttext;
  16.         }
  17.        
  18.         public static function decrypt( $crypttext ) {
  19.                 $td = mcrypt_module_open( self::$cypher, '', self::$mode, '' );
  20.                 $ivsize = mcrypt_enc_get_iv_size( $td );
  21.                 $iv = substr( $crypttext, 0, $ivsize );
  22.                 $crypttext = substr( $crypttext, $ivsize );
  23.                 $plaintext = "";
  24.                 if ( $iv ) {
  25.                         mcrypt_generic_init( $td, self::$key, $iv );
  26.                         $plaintext = mdecrypt_generic( $td, $crypttext );
  27.                         mcrypt_generic_deinit( $td );
  28.                 }
  29.                 return $plaintext;
  30.         }
  31.        
  32. }
  33. ?>
  34.  

(Добавление)
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.  
  4. class CURL {
  5.        
  6.         private $curl = NULL;
  7.         private $url  = NULL;
  8.        
  9.         function __construct( $url ) {
  10.                 $this->url = $url;
  11.                 $this->curl = curl_init( $this->url );
  12.         }
  13.        
  14.         function __destruct() {
  15.                 curl_close( $this->curl );
  16.         }
  17.        
  18.         /**
  19.          * This function use's for installing CURL
  20.          * parameters. If You need to use other
  21.          * params you can modify this function.
  22.          *
  23.          * All function You can see below.
  24.          */
  25.         private function setOptions() {
  26.                 $this->setParams();
  27.                 $this->showHeader();
  28.                 $this->followLocation();
  29.                 $this->setTimeOut(0);
  30.         }
  31.        
  32.        
  33.         public function setParams() {
  34.                 curl_setopt ($this->curl, CURLOPT_SSL_VERIFYPEER, 0);  
  35.                 curl_setopt ($this->curl, CURLOPT_RETURNTRANSFER, 1);
  36.                 curl_setopt ($this->curl, CURLOPT_SSL_VERIFYHOST, 1);
  37.         }
  38.        
  39.         public function showHeader( $show = false ) {
  40.                 if ( $show ) {
  41.                         curl_setopt ($this->curl, CURLOPT_HEADER, 1);
  42.                 } else {
  43.                         curl_setopt ($this->curl, CURLOPT_HEADER, 0);
  44.                 }
  45.         }
  46.        
  47.         public function followLocation( $follow = false ) {
  48.                 if ( $follow ) {
  49.                         curl_setopt ($this->curl, CURLOPT_FOLLOWLOCATION, 1);
  50.                 } else {
  51.                         curl_setopt ($this->curl, CURLOPT_FOLLOWLOCATION, 0);
  52.                 }
  53.         }
  54.        
  55.         public function setPost( $row ) {
  56.                 $postdata = self::parse( $row );
  57.                 curl_setopt ($this->curl, CURLOPT_POST, 1);
  58.                 curl_setopt ($this->curl, CURLOPT_POSTFIELDS, $postdata);
  59.         }
  60.        
  61.         public function setTimeOut( $time ) {
  62.                 $time = intval( $time );
  63.                 curl_setopt($this->curl, CURLOPT_TIMEOUT, $time);
  64.         }
  65.        
  66.         public function getUrl() {
  67.                 return $this->url;     
  68.         }
  69.        
  70.         public function getResource() {
  71.                 return $this->curl;
  72.         }
  73.        
  74.         public function send() {
  75.                 $html = curl_exec( $this->curl );
  76.                 return $html;
  77.         }
  78.        
  79.         private static function parse( $row ) {
  80.                 $str = "";
  81.                 foreach ( $row as $key => $value ) {
  82.                         $str .= $key."=".$value."&";
  83.                 }
  84.                 return $str;
  85.         }
  86. }
  87.  
  88. ?>
  89.  
  90.  

(Добавление)
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.  
  4. class Database {
  5.        
  6.         public $_dbLocation    = "localhost";
  7.         public $_dbUser        = "user";
  8.         public $_dbPass        = "pass";
  9.         public $_dbName        = "dbname";
  10.         public $_dbr           = null;
  11.         public $_sql           = "";
  12.         public $_sql_res       = null;
  13.         public $_resource      = null;
  14.         public $_error         = null;
  15.  
  16.         public function __construct( $new = false ) {
  17.                
  18.                 if ($this->_resource = @mysql_connect($this->_dbLocation, $this->_dbUser, $this->_dbPass, $new)) {
  19.                         if (!$this->_dbr = @mysql_select_db($this->_dbName, $this->_resource))  {
  20.                                 $this->_error = " Could not connect to database !";
  21.                                 return NULL;
  22.                         }                      
  23.                 }
  24.                 $this->_error = NULL;
  25.                
  26.         }
  27.        
  28.         public function __destruct()
  29.         {
  30.                 mysql_close($this->_resource);
  31.         }
  32.                
  33.         public function haveError() {
  34.                 if ( $this->_error == NULL ) {
  35.                         return FALSE;
  36.                 }
  37.                 return TRUE;
  38.         }
  39.        
  40.         public function getLastId()
  41.         {
  42.                
  43.                 $rows = null;
  44.                 $rows = @mysql_insert_id();
  45.                
  46.                 return $rows;
  47.         }
  48.        
  49.         /**
  50.          * selecting database
  51.          *
  52.          * @param string $database
  53.          */
  54.         public function selectDb ($database) {
  55.                 $this->_dbr = @mysql_select_db($database, $this->_resource);
  56.         }
  57.        
  58.         private function escape( $var ) {
  59.         if ( get_magic_quotes_gpc() ) {
  60.             $var = stripslashes( $var );
  61.         }  if (version_compare(phpversion(), '4.3.0', '<')) {
  62.                 $var = @mysql_escape_string($var);
  63.         } else {
  64.                 //$var = @mysql_real_escape_string($var);
  65.         }
  66.         return $var;
  67.     }
  68.        
  69.    
  70.     /**
  71.      * Enter description here...
  72.      *
  73.      * @param SQL query $strQuery
  74.      * @param Database (optional) $database
  75.      * @return Error massage if exist
  76.      */
  77.     public function query($strQuery, $database = '') {
  78.                 $strQuery = $this->escape($strQuery);
  79.                 $this->_sql_res = $strQuery;
  80.                 $sql = false;
  81.                 if (!empty($database)) {
  82.                         $this->_dbr = @mysql_select_db($database, $this->_resource);
  83.                 }
  84.                 if ($this->_sql = @mysql_query($this->_sql_res)) {
  85.                         $this->_error = null;
  86.                         return TRUE;
  87.                 } else  {      
  88.                         $this->_sql = null;
  89.                         $this->_error = mysql_error();
  90.                         return FALSE;
  91.                 }
  92.         }
  93.        
  94.         public function gerErrorMsg()
  95.         {
  96.                 return $this->_error;
  97.                
  98.         }
  99.         /**
  100.          * Enter description here...
  101.          *
  102.          * @return Rows of query function ($this->query)
  103.          */
  104.         public function fetchRow() {
  105.                 if ( !$this->_sql || $this->_sql == null ) {
  106.                         return null;
  107.                 }
  108.                
  109.                 $rows = null;
  110.                 $rows = @mysql_fetch_row($this->_sql);
  111.                
  112.                 return $rows;
  113.         }
  114.        
  115.         /**
  116.          * Enter description here...
  117.          *
  118.          * @return List Array
  119.          */
  120.         public function fetchArrayList() {
  121.                 if ( !$this->_sql || $this->_sql == null ) {
  122.                         return null;
  123.                 }
  124.                
  125.                 $array = array();
  126.                 while ($row = mysql_fetch_array( $this->_sql )) {
  127.                         $array[] = $row;
  128.                 }
  129.                        
  130.                 return $array;
  131.         }
  132.        
  133.         /**
  134.          * Enter description here...
  135.          *
  136.          * @return Array of query function
  137.          */
  138.         public function fetchArray() {
  139.                 if ( !$this->_sql || $this->_sql == null ) {
  140.                         return null;
  141.                 }
  142.                
  143.                 $row = mysql_fetch_array( $this->_sql );
  144.                        
  145.                 return $row;
  146.         }
  147.        
  148.         /**
  149.          * Enter description here...
  150.          *
  151.          * @return One value of query function
  152.          */
  153.         public function fetchOne() {
  154.                 if ( !$this->_sql || $this->_sql == null ) {
  155.                         return null;
  156.                 }
  157.                
  158.                 $res = null;
  159.                 if ($row = mysql_fetch_row( $this->_sql )) {
  160.                         $res = $row[0];
  161.                 }
  162.                
  163.                
  164.                 return $res;
  165.         }
  166.        
  167.         /**
  168.          * Enter description here...
  169.          *
  170.          * @return Object array of query function
  171.          */
  172.         public function fetchObjectList() {
  173.                 if ( !$this->_sql || $this->_sql == null ) {
  174.                         return null;
  175.                 }
  176.                
  177.                 $array = array();
  178.                 while ($row = mysql_fetch_object( $this->_sql )) {
  179.                         $array[] = $row;
  180.                 }
  181.                
  182.                 return $array;
  183.         }
  184.        
  185.         public function fetchObject()
  186.         {
  187.                 if ( !$this->_sql || $this->_sql == null ) {
  188.                         return null;
  189.                 }
  190.                
  191.                 $row = mysql_fetch_object( $this->_sql );
  192.                
  193.                 return $row;
  194.         }
  195.        
  196.         /**
  197.          * Enter description here...
  198.          *
  199.          * @return String of query yau have set if query function
  200.          */
  201.         public function returnSql() {
  202.                 return "<pre>".htmlspecialchars( $this->_sql_res )."</pre>";
  203.         }
  204.  
  205. }
  206.  
  207.  
  208. ?>
  209.  
  210.  

(Добавление)
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. class Cookie {
  4.        
  5.         private $created;
  6.         private $userid;
  7.         private $version;
  8.        
  9.         static $coockiename = 'USERAUTH';
  10.         static $myversion = '1';
  11.        
  12.         static $expiration = '600';
  13.         static $resettime  = '300';
  14.         static $warning    = '300';
  15.        
  16.         static $glue       = '|';
  17.        
  18.         function __construct( $userid = false ) {
  19.                 if ( $userid ) {
  20.                         $this->userid = $userid;
  21.                         return ;
  22.                 } else {
  23.                         if ( array_key_exists( self::$coockiename , $_COOKIE ) ) {
  24.                                 $buffer = $this->_unpackage( $_COOKIE[ self::$coockiename ]);
  25.                         } else {
  26.                                 throw new Exception();
  27.                         }
  28.                 }
  29.         }
  30.        
  31.         public function set() {
  32.                 $cookie = $this->_package();
  33.                 setcookie( self::$coockiename, $cookie);
  34.         }
  35.        
  36.         public function validate() {
  37.                 if (!$this->version || !$this->created || !$this->userid ) {
  38.                         throw new Exception("Неверный cookie фаил !");
  39.                 }
  40.                
  41.                 if ( $this->version != self::$myversion ) {
  42.                         throw new Exception("Неверная версия cookie фаила !");
  43.                 }
  44.                
  45.                 if ( time() - $this->created > self::$expiration ) {
  46.                         throw new Exception("Истекло время действия cookie фаила !");
  47.                 } elseif ( time() - $this->created > self::$resettime ) {
  48.                         $this->set();
  49.                 }
  50.         }
  51.        
  52.         private function _package() {
  53.                 $parts = array( self::$myversion, time(), $this->userid );
  54.                 $coockie = implode( self::$glue, $parts );
  55.                 return Encryption::encrypt( $coockie );
  56.         }
  57.        
  58.         private function _unpackage( $cookie ) {
  59.                 $buffer = Encryption::decrypt( $cookie );
  60.                 list( $this->version, $this->created, $this->userid ) = explode( self::$glue, $buffer );
  61.                
  62.                 if ( $this->version != self::$myversion ||
  63.                          !$this->created ||
  64.                          !$this->userid ) {
  65.                         throw new Exception();
  66.                 }
  67.         }
  68.        
  69.         private function _reissue() {
  70.                 $this->created = time();
  71.         }
  72. }
  73.  
  74. ?>
  75.  

(Добавление)
Сори, документация неочень написана, чуть позже примеры напишу как какой класс юзается
-SCHATTEN- Отправлено: 06 Февраля, 2008 - 06:59:58 • Тема: Как сделать? • Форум: Корзина

Ответов: 4
Просмотров: 3399
grim
Это называется флеш, а как тока там заканчивается таймер, он вызывает скрипт который чистит базу.
-SCHATTEN- Отправлено: 28 Января, 2008 - 08:21:55 • Тема: Вычислить и вывести какой пользователь (именно) • Форум: Программирование на PHP

Ответов: 2
Просмотров: 302
PHP:
скопировать код в буфер обмена
  1.  
  2. //Меняем $_SESSION на $_GET и выводим в зависимости от логина который был запрошен в адресе.
  3.  
  4. //Проверям задано ли имя пользователя, если нет то берем своё из сессии
  5. if (!empty($_GET['login'])) {
  6.     $login = $_GET['login'];
  7. } else {
  8.     $login = $_SESSION['login'];
  9. }
  10. // Получаем данные из БД о пользователе
  11.     $query = "SELECT * FROM `users` WHERE login='".$login."'";
  12.     $res = mysql_query( $query );
  13.     $user = mysql_fetch_array( $res );
  14.     //
  15.     echo '<div class="quote_conteiner">';
  16.     echo 'ID: '.$user['id'].'';
  17.     echo '<br/>';
  18.     echo 'Ник: '.$user['login'].'';
  19.     echo '<br/>';
  20.     echo 'Постов: '.$user['posts'].'';
  21.     echo '<br/>';
  22.     echo 'Имя: '.$user['name'].'';
  23.     echo '<br/>';
  24.     echo 'Пол: '.$user['sex'].'';
  25.     echo '<br/>';
  26.     echo 'Дата рождения: '.$user['bday'].'-'.$user['bmonth'].'-'.$user['byear'].'г.';
  27.     echo '<br/>';
  28.     echo 'О себе: '.$user['osebe'].'';
  29.     echo '<br/>';
  30.     //echo 'Пароль: '.$user['pass'].'';
  31.     //echo '<br/>';
  32.     echo '</div>';
  33.     echo '<div class="quote_conteiner">';
  34.     echo '<a href="index.php">Главная</a><br/>';
  35.     echo '</div>';
  36.  



соответственно страница с выводом топика будет выглядеть так :

PHP:
скопировать код в буфер обмена
  1.  
  2. $result = mysql_query("SELECT * FROM `mess` ORDER by `ltime` desc LIMIT 3");
  3. if (!mysql_num_rows($result))
  4.    echo("Сообщений нет.");
  5. else
  6. {
  7.    while($row=mysql_fetch_array($result))
  8.    {
  9.       echo '---';
  10.       echo '<br/>';
  11.       echo 'Дата: '.date("[d/m]-(H:i:s)",$row['ltime']);
  12.       echo '<br/>';
  13.       echo 'Имя: <a href="ank_r.php?login='.$row['login'].'"><b>'.$row['login'].'</b></a>';
  14.       echo '<br/>';
  15.       echo 'Текст: <i>'.$row['msg'].'</i>';
  16.       echo '<br/>';
  17.    };
  18. }
  19.  
-SCHATTEN- Отправлено: 23 Января, 2008 - 08:37:23 • Тема: Как в PHP одновременно можно сделать запрос в БД MySQL? • Форум: SQL и Архитектура БД

Ответов: 1
Просмотров: 32
CODE (text):
скопировать код в буфер обмена
  1.  
  2. SELECT `DealerCode`, `DealerContractCode`, `DealerContractDate`, `LastName`, `FirstName`, `SecondName`, `SimBPlan`, `SimNumber`
  3. FROM `customer_register`
  4. where `cert`='".$_POST['cert_slc']."' AND `DealerContractDate` BETWEEN ".$date_a." AND ".$date_b." ORDER BY ".$orderby."
  5.  

(Добавление)
Делайте код читабельным. и нормально вопрос ставьте, ато непонятно что нужно.
-SCHATTEN- Отправлено: 23 Января, 2008 - 08:30:56 • Тема: Переадресация в заданное время • Форум: Программирование на PHP

Ответов: 8
Просмотров: 5027
AJAX, JavaScript
или функция sleep
-SCHATTEN- Отправлено: 29 Октября, 2007 - 11:24:03 • Тема: Что будет через 5 лет? • Форум: Прочее

Ответов: 10
Просмотров: 92
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $num = mt_rand(0,1);
  4.  
  5. switch($num) {
  6.     case 0:
  7.         print 'Через 5 лет прогеры никому небудут нужны';
  8.         break;
  9.     case 1:
  10.         print 'Мы нужны всегда !';
  11.         break;
  12. }
  13.  
  14. ?>
  15.  


Вобщем все всё поняли ;)
-SCHATTEN- Отправлено: 22 Октября, 2007 - 07:28:48 • Тема: Редакторы PHP • Форум: Программное обеспечение

Ответов: 421
Просмотров: 254312
Zend Development Environment.

Страниц (41): « 1 [2] 3 4 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB