Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Обработка переменных при помощи класса
 
 автор: sanchescom   (03.11.2009 в 18:51)   письмо автору
 
 

Написал класс....вроде все обрабатывает вот только....результат при во втором обращении не совсем правильный..
1Array ( [yr1] => 1 [yz1] => 2 [dok1] => 3 [fak1] => 4 [sp1] => 5 ) INSERT INTO b_resum_users_obr VALUES ('NULL', '', '','1','2','3','4','5','SHOW')

2Array ( [yr2] => 11 [yz2] => 22 [dok2] => 33 [fak2] => 44 [sp2] => 55 ) INSERT INTO b_resum_users_obr VALUES ('NULL', '', '','1','2','3','4','511','22','33','44','55','SHOW')

он в цикле начнает обрабатывать и первый запрос тоже...подскажите пожалуйста как это исправить и можно ли? может я и иду не по тому пути!

<?PHP  
class PostVar
{
   public 
$post_arr = array();
   public 
$str      "";
   public 
$table;
   public 
$Row 0;  

   function 
ActionVar($post_arr = array(),$table)
   {
      
$this->Row += 1;
      print 
$this->Row;
      
$this->table    $table;
      
$this->post_arr $post_arr;
      
print_r($this->post_arr);
      if (
is_array($post_arr))
      {
         foreach (
$post_arr as $name_var => $var_post)
         {
            if (empty(
$var_post)) {
               
$var_post "NULL"
            }
            
$this->str .= $$name_var trim(htmlspecialchars($var_post."%"));
         }
         
$this->str substr($this->str,0,strlen($this->str)-1);
         
$this->QueryVar($this->str,$this->table);    
      }
   }
   
   function 
QueryVar($str,$table)
   {
      
$arrvar explode("%",$this->str);
      
$query "INSERT 
                INTO    "
.$this->table.
                VALUES 
                        ('NULL',
                         '"
.$USER."',
                         '"
.$id_u."',";
      for(
$i=0$i<count($arrvar); $i++) {
         
$query .= "'$arrvar[$i]',";
      }
      switch (
$this->table) {
        case 
"b_resum_users_obr":
            
$query .= "'SHOW')";
            break;
        default:
            
$query substr($query,0,strlen($query)-1).")";
            break;
      }
      print 
$query."<br>";
   }
}   

?>

<bR />
<bR />

<? 

$_POST
['yr1'] = 1
$_POST['yz1'] = 2
$_POST['dok1'] = 3
$_POST['fak1'] = 4
$_POST['sp1']  = 5

$_POST['yr2'] = 11
$_POST['yz2'] = 22
$_POST['dok2'] = 33
$_POST['fak2'] = 44
$_POST['sp2']  = 55

   
$ClassPostVar = new PostVar();   
   
   if (isset(
$_POST['yr1'])    or 
       isset(
$_POST['yz1'])    or 
       isset(
$_POST['dok1'])   or
       isset(
$_POST['fak1'])   or
       isset(
$_POST['sp1'])) 
   {
       
$ClassPostVar->ActionVar($post_arr = array(
                                                   
"yr1"    => $_POST['yr1'],
                                                   
"yz1"    => $_POST['yz1'],
                                                   
"dok1"   => $_POST['dok1'],
                                                   
"fak1"   => $_POST['fak1'],
                                                   
"sp1"    => $_POST['sp1']
                                                 ),
"b_resum_users_obr");
                                               
   }   
   if (isset(
$_POST['yr2'])    or 
       isset(
$_POST['yz2'])    or 
       isset(
$_POST['dok2'])   or
       isset(
$_POST['fak2'])   or
       isset(
$_POST['sp2'])) 
   {
      
$ClassPostVar->ActionVar($post_arr = array(
                                                   
"yr2"    => $_POST['yr2'],
                                                   
"yz2"    => $_POST['yz2'],
                                                   
"dok2"   => $_POST['dok2'],
                                                   
"fak2"   => $_POST['fak2'],
                                                   
"sp2"    => $_POST['sp2']
                                                ),
"b_resum_users_obr");
                                               
   }                            
?>

  Ответить  
 
 автор: root   (03.11.2009 в 19:03)   письмо автору
 
   для: sanchescom   (03.11.2009 в 18:51)
 

<?
function ActionVar($post_arr = array(),$table)
{
    
$this->str '';
...

  Ответить  
 
 автор: sanchescom   (03.11.2009 в 19:06)   письмо автору
 
   для: root   (03.11.2009 в 19:03)
 

Так просто)))) А я сижу туплю уже 40 минут))))Спасибо огромное!!!!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования