Из какого класса был клик? ;)

PekpyT

Guest
Из какого класса был клик? ;)

Суть проблемы в следующем:
Есть несколько классов:

PHP:
<?
class test1
{
   function test1($param)
   {
      if ($param) {...}
   }

   function show()
   {
    ?><a href = "tst.php?save=1...">TEST1</a><?
   }
}

class test2
{
   function test2($param)
   {
      if ($param) {...}
   }

   function show()
   {
    ?><a href = "tst.php?save=1...">TEST2</a><?
   }
}
    $t1 = new test1;
    $t2 = new test2;
    $t1->show();
    $t2->show();
?>
Т.е. Значения $save и т.д. необходимо передавать именно в тот экземпляр, из которого был сделан клик.
Я прошу прощения за корявость вышеприведенного примера, но больше ничего не пришло в голову для примера :(
Подскажите люди добрые, только чур не пинать =)
 

гоша

Guest
грубо

echo '<a href = "tst.php?class='
.get_class($this).'&save=1...">TEST1</a>';

....

$obj= new $_GET["class"];
 

GD

Guest
$save как был параметром из $_GET, так и останеца...
но в $_GET появится исчо один параметр: class, содержащий имя того класса, "из которого кликнули"
 

Demiurg

Guest
Вот что происходит, когда ООП пытаются натянуть непонятно куда.
раз уж так извращаться, то делайте хотя бы так:
$class_arr = array('1'=>'class1' , '2'=>'class2' ,'3'=>'class3' ... );
if(isset($_GET['class']) && isset($class_arr[$_GET['class']]) && class_exists($class_arr[$_GET['class']]))
$obj = new $class_arr[$_GET['class']];
 
Сверху