(PHP) Классы

-MVP-
Дата: 11.07.2006 16:35:40
Я только начал разбираться с классами, пробую написать класс для работы с MySql, Взгляните на код, расскажите, может я что не так делаю, как лучше реализовать этот класс, где можно прочитать интересную информацию по классам в PHP. Какие фнкции ещё необходимо добавить в класс, для его работы полгоценной работы с MySql. В общем просветите бедолагу)

<?php
 class My_sql
 {
//connecting
  var $my_sql_host = 'localhost';
  var $my_sql_login = 'root';
  var $my_sql_passwd = '';

//connection idntity
  var $my_sql_conn;

//selecting db
  var $my_sql_db = 'AA';

//query:selection
  var $my_sql_tbl_name = 'osa';

   function My_sql()
   {
     $this->my_sql_connect();
     $this->my_sql_select_db();
   }


        function my_sql_errors($err_text_my = "", $err_text_php = "")
	{
          $error_report  = " <div style='background: #fd0; margin: 10%; padding: 10px;";
	  $error_report .= " border: 3px solid #666; text-align: center;'>";
	  $error_report .= " <font color=red>";
	  $error_report	.= " <b>".$err_text_my."</b><br/>";
          $error_report	.= " <b>".$err_text_php."</b>";
	  $error_report	.= " </font></div>";
	  echo $error_report;
	}


        function my_sql_connect()
	{
	  $this->my_sql_conn = @mysql_connect($this->my_sql_host, $this->my_sql_login, $this->my_sql_passwd)
	  or exit( $this->my_sql_errors( "An error occured while connecting to DB", mysql_error()) );
	  return $this->my_sql_conn;
	}


	function my_sql_select_db()
	{
	   $res = @mysql_select_db($this->my_sql_db, $this->my_sql_conn)
	   or exit( $this->my_sql_errors( "DB is not exists", mysql_error()) );
	   return $res;
	}


   	function my_sql_select($whr_fld = 'id', $whr_sgn = '>=', $whr_val = '1', $ord = 'id DESC')
	{
	   $query = " SELECT * FROM ".$this->my_sql_tbl_name.
	            " WHERE ".$whr_fld.$whr_sgn.$whr_val.
		    " ORDER by ".$ord.";";

           $res = @mysql_query( $query )
	   or exit($this->my_sql_errors( "Invalid SELECT QUERY", mysql_error()));
	   return $res;
	}


	function my_sql_fetch($res)
	{
           while ($row = mysql_fetch_array($res, MYSQL_NUM)) {
           printf ("ID: %1\$s  Name: %2\$s Surname: %3\$s <br/>", $row[0], $row[1], $row[2]);}
	   return true;
	}


	function my_sql_insert($scd_val, $thr_val,
                        	$scd_fld = 'Name', $thr_fld = 'Surname')
	{
          $query =  " INSERT INTO ".$this->my_sql_tbl_name.
                    " (".$scd_fld.", ".$thr_fld.")
	             VALUES ('$scd_val', '$thr_val');";
           echo $query;
           $res = @mysql_query( $query )
	   or exit( $this->my_sql_errors( "Invalid INSERT QUERY", mysql_error()) );
	   return $res;
	}


	function my_sql_delete($whr_fld, $whr_sgn, $whr_val)
	{
          $query =  " DELETE FROM ".$this->my_sql_tbl_name.
                    " WHERE ".$whr_fld.$whr_sgn.$whr_val.";";
           echo $query;
           $res = @mysql_query( $query )
	   or exit( $this->my_sql_errors( "Invalid DELETE QUERY", mysql_error()) );
	   return $res;
	}


	function my_sql_drop()
	{
	  $this->my_sql_delete ('1', '=', '1');
	  echo  $this->my_sql_errors( "All data was deleted");
	  return true;
	}


 }
 ?>
-MVP-
Дата: 11.07.2006 16:41:26
да, с классами разбираюсь пока в ПХП4
4m@t!c
Дата: 11.07.2006 16:49:03
Почему не на 5-ке?
----------------------------------------
Артисты не приехали, приехали цыгане
-MVP-
Дата: 11.07.2006 16:57:50
просто книга по пхп4
-MVP-
Дата: 11.07.2006 17:01:13
4m@t!c
просто мне бы саму идеологию понять, может у меня изначально неправильный подход или ещё что-то тут не так.

оффтоп

я тоже кстати баскет абажаю, Двейн Вейд круть ))
4m@t!c
Дата: 11.07.2006 17:18:55
Есть смысл сразу работать в 5-ке.
Рекомендую:
1. Что нового в РНР 5?
2. Переход к PHP5
Замечу, что кол-во хостингов с 5-кой меньше, чем с 4-кой и скрипт заточеный на работу с 5-кой может не пойти в 4-ке. Но если речь идет именно об обучении, то лучше 5-ка.
----------------------------------------
Артисты не приехали, приехали цыгане
-MVP-
Дата: 11.07.2006 17:53:17
просто хостинги тоже многое решают. не знаю скоро ли многие из них перейдут на 5-ю версию. я просто раньше все оформлял с помощбю функций, но многие говорили мне о классах, решил переходить, но пока честно большой разницы не замечаю..
4m@t!c
Дата: 11.07.2006 17:55:14
Там же на phpclub.ru есть статья, где описывается функциональное и ООП. Нет понятия, что хуже, а что лучше. Есть конкретная ситуация, когда лучше ООП, а есть ситуация, когда ФП.
----------------------------------------
Артисты не приехали, приехали цыгане
-MVP-
Дата: 11.07.2006 19:47:14
взгляни на сам класс, може там внутри одна лабуда, может это можно гибче сделать, наверное надо добавить ещё какую-то функциональность
*
Дата: 12.07.2006 12:35:41
-MVP-
многие говорили мне о классах, решил переходить, но пока честно большой разницы не замечаю..
Читайте Буча.