Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переменая пропадает, $_POST не сохраняется в класс 
:(
    Опции темы
zxxz
Дата 7.2.2011, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 27.10.2010

Репутация: нет
Всего: нет



Есть класс my_class. Метод вызываются из скрипта my_class->my_method.
С помощью my_method пытаюсь сохранить переменную в классе my_var.
my_method($x){
this->my_var = $x;
echo $this-my_var;// работает.
}

my_other_method(){echo $this->my_var;}//не работает переменная сгорела класс не перегружал использую тот же.
 my_other_method это метод класса вызывается из скрипта.
Пока что надо сделал через файлы, но при одновременном запросе переписывается файл и опять ничего не работает.
Помогите разобраться.

PM MAIL WWW   Вверх
patap
Дата 7.2.2011, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 26
Всего: 40



Лучше один раз увидеть, чем сто раз услышать

Это сообщение отредактировал(а) patap - 7.2.2011, 18:45


--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
patap
Дата 7.2.2011, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 26
Всего: 40



больше кода и желательно в оригинале, без существенной трансформации


--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
GZep
Дата 8.2.2011, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: 8
Всего: 32



Цитата(zxxz @  7.2.2011,  18:29 Найти цитируемый пост)
this->my_var = $x;

тут пропущен символ "доллар".

Почему нельзя использовать тег код, чтобы наглядно увидеть проблему в коде...


--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
zxxz
Дата 8.2.2011, 01:26 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 27.10.2010

Репутация: нет
Всего: нет



Code:
Код

 function showTables($base){
      $this->saveDB($base);
      mysql_query("USE $base");
       $result = mysql_query("SHOW TABLES FROM ".$base);
       if($result){
        $i = 0;
        $cnt = mysql_num_rows($result);
        echo"<span class='line'>Select table:</span>";
        echo "<select class='line' id='select_table'>";
    while ($i < $cnt) {
    $table_name = mysql_table_name($result, $i);
    echo "<option id='table' class='line' value='".$table_name."'>".$table_name. "</option><br/>";
    $i++;
}//while
echo "</select><input type='submit' id='submit_table' value='Submit table' class='line'>";
echo "<script type='text/javascript'>

      $('#submit_table').click(function(){
     $.post('gateKeeper.php', {table:$('#select_table option:selected').val()}, function(text) {
       // format and output result
       $('#table_description').html(
         text

       );
     });
   });
   </script>";
        }//if result
        mysql_free_result($result);
   }//showTables

//С файлами работает с сессиями нет
private function saveDB($base){
      /* $file  = fopen('base','wb');
       fwrite($file, $base);
       fclose($file);*/
      session_start();
      $_SESSION['base'] = $base;
      echo $_SESSION['base'];
   }//saveDB

   private function getDB(){
       /*if(file_exists('base')&& is_readable('base')){
           $file = fopen('base', 'rb');
           $content = file_get_contents('base');
           if($content){return $content;}//if

       }//if*/
      return $_SESSION['base'];
   }//getDB


 public function displayColumn($column){
       //if(is_array($column)&& isset ($column)){$separated = implode(",", $column);}//if
       $table = $this->getTable();//почти эдентичная getDB();
       $base = $this->getDB();
       mysql_query("USE $base");
       echo "The columns passed: ".$column;
       $result = mysql_query("SELECT $column FROM $table");
       if($result){           
           $i = 0;
           $cnt = mysql_num_rows($result);
           echo "<table class='result_table'>";
           while($i<$cnt){
           echo "<tr>";
       $row = mysql_fetch_row($result);
       foreach ($row as $key=>$value){
          echo"<td>".$value."</td>";}//foreach
           $i++;
           echo "</tr>";
       }//while
       echo "</table>";
       mysql_free_result($result);
   }//if
   else{echo "The result was empty";}
   }//displayColumn


Тут обсуждалось что то похожее, ксожалению это для меня пока какое то жуткое вуду.
ООП не понимаю на все 100. А то что читаю только сильнее запутывает.  smile 
PM MAIL WWW   Вверх
Ozerich
Дата 8.2.2011, 01:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 164
Регистрация: 2.8.2009
Где: Минск, Беларусь

Репутация: нет
Всего: 5



zxxz, а в чем проблема?
--------------------
C++(STL) / DHTML(CSS) / Javascript / PHP  Developer
PM MAIL ICQ Skype   Вверх
zxxz
Дата 8.2.2011, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 27.10.2010

Репутация: нет
Всего: нет



Ozerich,  в чем проблема? Знал бы - не спрашивал.
Переменнная не доступна после обработки одной функцией и попыки сохранить значение в
переменной класса. Пробовал сохранять так:
Код

private x =null;

functon my_function($y){
// bla bla
$this->x=y;
}

Потом запрашиваю  'х' из другой функции и всё уже пропала.
В чем проблема?

Это сообщение отредактировал(а) zxxz - 8.2.2011, 11:09
PM MAIL WWW   Вверх
Ozerich
Дата 8.2.2011, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 164
Регистрация: 2.8.2009
Где: Минск, Беларусь

Репутация: нет
Всего: 5



Что не работает? Не вижу связи между кодом и первым сообщением
--------------------
C++(STL) / DHTML(CSS) / Javascript / PHP  Developer
PM MAIL ICQ Skype   Вверх
zxxz
Дата 8.2.2011, 11:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 27.10.2010

Репутация: нет
Всего: нет



Ozerich,  извини, если не понятно объясняюсь. Но как я и сказал суть проблемы в том что не могу
сохранить переменную для последующего использования. И не знаю как это правильно сделать.
Я новичок.
PM MAIL WWW   Вверх
Ozerich
Дата 8.2.2011, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 164
Регистрация: 2.8.2009
Где: Минск, Беларусь

Репутация: нет
Всего: 5



Код

<?php
class my_class
{
    private $my_var;
    public function set_value($value)
    {
        $this->my_var = $value;
    }
    public function get_value()
    {
        return $this->my_var;
    }
}

$my = new my_class();
$my->set_value(1);
echo $my->get_value();

?>

--------------------
C++(STL) / DHTML(CSS) / Javascript / PHP  Developer
PM MAIL ICQ Skype   Вверх
skyboy
Дата 8.2.2011, 12:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(zxxz @  8.2.2011,  09:46 Найти цитируемый пост)
$this->x=y;

опять доллар пропустил.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0886 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.