ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

OOP в PHP для начинающего
  #1  
Старый 04.04.2010, 22:07
Аватар для up3gp
up3gp
Новичок
Регистрация: 19.03.2010
Сообщений: 14
Провел на форуме:
23374

Репутация: 0
По умолчанию OOP в PHP для начинающего

Учусь использовать классы и методы.

У меня много вопросов типа "а нафиг оно?" и почти нет типа "как это сделать".

Вот тут написал маленьки класс для создания форм.
Прокомментируйте его пожалуйса) ==>как вам оно=>мое начало.

PHP код:
<?php


class Form {
    
    private 
$method;
    private 
$type;
    private 
$field_type;
    private 
$field_name;
    private 
$field_value;
    private 
$field_class;
    
    public function 
form_open($method,$type)
    {
        
$this->method $method;
        
$this->type $type;
        return 
"<fomr method='{$this->method}' '{$this->type}'>";
    }
    
    
    public function 
field_create($field_type,$field_name,$field_value,$field_class)
    {
        
$this->field_type $field_type;
        
$this->field_name $field_name;
        
$this->field_value $field_value;
        
$this->field_class $field_class;
        
        return 
"<input type='{$this->field_type}' name='{$this->field_name}' value='{$this->field_value}' class='{$this->field_class}'>";
    }

    public function 
form_close()
    {
        return 
"</form>";
    }
    
    
}


?>
 
Ответить с цитированием

  #2  
Старый 04.04.2010, 22:17
Аватар для Gifts
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

up3gp опечатка fomr вместо form

Взять процедуры, написать вокруг них class Super_Puper_Class - еще не ООП
__________________
Любая действущая программа устарела.
Создайте систему, которой сможет пользоваться даже дурак ,и только дурак захочет ею пользоваться.
Как правильно задавать вопросы: _http://www.yakimchuk.ru/questions.htm
 
Ответить с цитированием

  #3  
Старый 04.04.2010, 22:25
Аватар для up3gp
up3gp
Новичок
Регистрация: 19.03.2010
Сообщений: 14
Провел на форуме:
23374

Репутация: 0
По умолчанию

Понимаю. Только не понимаю. Вот так.
 
Ответить с цитированием

  #4  
Старый 04.04.2010, 22:27
Аватар для Deathdreams
Deathdreams
Постоянный
Регистрация: 08.11.2008
Сообщений: 498
Провел на форуме:
2603363

Репутация: 278
Отправить сообщение для Deathdreams с помощью ICQ
По умолчанию

Класс пустой + многое непонятно, зачем в нём вообще переменные ?

А если я хочу задать input только для чтения, то что ?
 
Ответить с цитированием

  #5  
Старый 04.04.2010, 22:28
Аватар для up3gp
up3gp
Новичок
Регистрация: 19.03.2010
Сообщений: 14
Провел на форуме:
23374

Репутация: 0
По умолчанию

Тоесть, я просто для вывода формы, использовал класс. Это могла сделать и обычная функция. А как тогда реализовать класс для создания форм, чтобы он был объекто ориентированным классом , а не процеДурным.
 
Ответить с цитированием

  #6  
Старый 04.04.2010, 22:30
Аватар для up3gp
up3gp
Новичок
Регистрация: 19.03.2010
Сообщений: 14
Провел на форуме:
23374

Репутация: 0
По умолчанию

Цитата:
Сообщение от Deathdreams  
Класс пустой + многое непонятно, зачем в нём вообще переменные ?

А если я хочу задать input только для чтения, то что ?
я не думал об этом. Так как я такие поля не создаю. И скрытое тоже там не создаш)
"зачем в нём вообще переменные ?

" => сам не знаю. Я думал они там нужны)

Последний раз редактировалось up3gp; 04.04.2010 в 22:32..
 
Ответить с цитированием

  #7  
Старый 04.04.2010, 22:33
Аватар для up3gp
up3gp
Новичок
Регистрация: 19.03.2010
Сообщений: 14
Провел на форуме:
23374

Репутация: 0
По умолчанию

Я ведь говорю какие у меня вопросы. А нафиг оно, задавать эти переменные в начале класса?
 
Ответить с цитированием

  #8  
Старый 04.04.2010, 22:34
Аватар для Deathdreams
Deathdreams
Постоянный
Регистрация: 08.11.2008
Сообщений: 498
Провел на форуме:
2603363

Репутация: 278
Отправить сообщение для Deathdreams с помощью ICQ
По умолчанию

Тогда зачем вообще класс ?

Можно использовать отдельную функцию.

Вообще класс - "ниочём".

-----upd
Код:
public
Зачем ?
По дефолту он всегда паблик.

Последний раз редактировалось Deathdreams; 04.04.2010 в 22:42..
 
Ответить с цитированием

  #9  
Старый 04.04.2010, 22:44
Аватар для up3gp
up3gp
Новичок
Регистрация: 19.03.2010
Сообщений: 14
Провел на форуме:
23374

Репутация: 0
По умолчанию

Цитата:
Сообщение от Deathdreams  
Тогда зачем вообще класс ?

Можно использовать отдельную функцию.

Вообще класс - "ниочём".

-----upd
Код:
public
Зачем ?
По дефолту он всегда паблик.
пониманию.
Хотел научиться, но вышла ерунда.
А что в нем должно было быть к примеру? В классе для создания формы. Расскажите в теории кому не сложно.
 
Ответить с цитированием

  #10  
Старый 05.04.2010, 01:17
Аватар для DTW
DTW
Участник форума
Регистрация: 11.05.2008
Сообщений: 202
Провел на форуме:
420713

Репутация: 104
По умолчанию

Почитай ее книгу "Объектно-ориентированное программирование на PHP", написанную сотрудниками нашей студии Кузнецовым Максимом Валерьевичем и Симдяновым Игорем Вячеславовичем




Я не профи

объект класса формы может содержать другие объекты
например объект класса элемент поля
от него может быть порожденный новый объект класса
текстового поле.

PHP код:

 
class Form 
   
{
       private 
$element;
       private 
$action;
       private 
$method;
       private 
$name;
       private 
$value;
       
       public function 
__construct($element,$action,$method,$name,$value)
       {
         
$this->element=$element;
         
$this->action=$action;
         
$this->method=$method;
         
$this->name=$name;
         
$this->value$value
       }
       public function 
cheak()
       {
           
       }
       
       public function 
viewform()
       {
        
$formview ="<form action='{$this->action}' method='{$this->method}' name='{$this->name}' >";
            echo 
$formview
          
               foreach(
$this->element as $el)
               {
                  
                  
                
$formview .=   $el->viewelement();
                   
               }
           
            echo 
"<input type='submit' value='{$this->value}'></form>";
       }
       public function 
__toString()
       {
           
$this->viewform();
       }
       
   }
   
   class 
Field {
       protected 
$style;
       protected 
$class;
       protected 
$name;
        public function 
__construct($style,$class,$name
        {
            
$this->style=$style;
            
$this->class=$class;
            
$this->name=$name;
        }
       
   }
   
   class 
Finput  extends Field
   
{
       private 
$type;
       private 
$value;
      
       
      public function 
__construct($type,$value,$name,$style="",$class="")
      {
        
         
parent::__construct($style,$class,$name);
          
$this->type=$type;
          
$this->value=$value;
         
      }
      public function 
viewelement()
      {
          
$viewelement="<input type='{$this->type}' value='{$this->value}'";
          if(!empty(
$this->class)){ $viewelement .="class='{$this->class}'";}
          if(!empty(
$this->style)){$viewelement .="style='{$this->style}'"; }
          
$viewelement .="name='{$this->name}'";
          
$viewelement .="/>";
          echo 
$viewelement;
      }
   }

   
$element = new Finput('text','textpole','my1');
   
$element2 = new Finput('text','textpole2','my2');
  
   
$form = new Form(array('element1'=>$element,'element2'=>$element2),'form.php','get','form1','send');
   
   
$form->viewform(); 

Последний раз редактировалось DTW; 05.04.2010 в 01:31..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пишем консольный клиент для Web-сервиса на примере Hash Cracking Bot (HCB) -=lebed=- Авторские статьи 18 29.10.2009 22:32
Софт для мобильных телефонов под *nix Grrl Сотовый фрикинг 2 02.03.2007 01:47



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ