На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА
Прежде чем задать вопрос, зайдите в раздел FAQ, возможно там уже есть ответ на него.
Если вы хотите вставить код в сообщение, то пожалуйста выделяйте его тегом [code=dfp] ... [/сode].
Для этого используйте кнопку [code=dfp] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Delphi for PHP.
Модераторы: ViktorXP, vicis
  
> Удаление данных
    Здравствуйте всем. Подскажите как удалить данные правильно. Есть у меня сетка ДБГрид, и кнопка Удалить (Button).

    Делаю как по аналогии в билдере

    ExpandedWrap disabled
          function Button2Click($sender, $params)
          //вот эта строчка как мне вытянуть текущую запись? на которой стоит курсор (она выделена)
          $del = $this->DBGrid1->DataSource->DataSet->Fields;
          mysql_query("DELETE FROM {specialist} WHERE (FIO_specialist='{$del}')");
          }


    Вопрос в коде
      зайдите в раздел FAQ,
      тема уже была
        Извините конечно, искал в поиске не нашел как-то как удалить запись поле которой выделено в RADPhp
          Нашёл наконец-то на форуме строчку
          Переделал в свою

          ExpandedWrap disabled
            $del = $this->DBGrid1.getTableModel().getValue(0, $this->DBGrid1.getFocusedRow());


          Пишет Fatal error: Call to undefined function getTableModel() in Z:\home\acz.net\www\index.php on line 54


          Вообщем пишу код в событие

          ExpandedWrap disabled
                function DBGrid1JSClick($sender, $params)
                {
                    ?>
                    //begin js
                      document.getElementById('Edit5').value = DBGrid1.getTableModel().getValue(1, DBGrid1.getFocusedRow());
                    //end
                    <?php
                }


          Но почему то сетка не подгружается. Из-за чего это может быть?

          Тот же код писал и для ButtonJSClick он не срабатывает, в поле ничего не отображается
          Сообщение отредактировано: TYMON -
            del = DBGrid.getTableModel().getValue(1, DBGrid.getFocusedRow()) ;

            del - это ты получаешь через жс. теперь надо его передать в пхп код для параметра удаления ;

            в примерах смотри на MasterDetail как дальше можно действовать
              function Button3JSClick($sender, $params)
              {
              ?>
              //begin js

              //end

              <?php
              $this->Edit5->Text = "fdgdfgdfgdfgd";
              }

              Объясните пожалуйста почему я запустив страницу сразу вижу текст в Эдит5? На кнопку не нажимал

              Добавлено
              Вот нашел попробовал, не работает

              ExpandedWrap disabled
                function Button3JSClick($sender, $params)
                    {
                       ?>
                        //begin js
                      del = DBGrid1.getTableModel().getValue(1, DBGrid1.getFocusedRow());
                           window.location.href = "http://acz.net/index.php?del=" + del;
                 
                        //end
                 
                       <?php
                 
                       $this->Edit5->Text = $_GET['del'];
                 
                 
                 
                    }
                а сам вызов
                del = 1:
                "http://acz.net/index.php?del=" + del
                работает ?
                чисто без среды разработки
                  Немного не понял без среды разработки в смысле в браузере запустить и попробовать нажать на кнопку? при этом заменив значение del на 1 просто?

                  Попробовал так, не работает
                  Сообщение отредактировано: TYMON -
                    запусти в браузере в командной строке "http://acz.net/index.php?del=1"
                    без всяких кнопок и т.д.
                    и если ничего не работает, то Delphi for PHP вообще не причем.
                    не работает сам код пхп.
                    изучать сам пхп нужно ну никак не с Delphi for PHP
                      Знаю что надо учить PHP, мне просто срочно надо сделать, а спешка в программировании вообще не вариант, сам-то привык с десктопом и базами работать, поэтому извиняюсь за беспокойство.

                      Выполнил строчку в браузере записало в Edit единицу.
                        отлично - работает.


                        теперь создай еще 1 файл с именем например t1.php помести туда код где
                        Цитата
                        Выполнил строчку в браузере записало в Edit единицу.

                        т.е. тот код где сработало

                        и в Delphi for PHP выполни
                        вместо твоего кода
                        ExpandedWrap disabled
                                del = DBGrid1.getTableModel().getValue(1, DBGrid1.getFocusedRow());
                                window.location.href = "http://acz.net/[B]t1.php[/B]?del=" + del;

                        т.е у тебя должно файл index.php вызвать t1.php и в t1.php записать в Edit единицу
                          Не знаю правильно Вас понял или нет. Но когда нажимаю на кнопку index.php то на форму t1.php не переходит
                            window.location.href = "http://acz.net/t1.php?del=" + del;

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

                            вот так
                            location.href='ws_http://acz.net/t1.php?del=1' ;
                            и тип кнопки выставь btnormal
                              В адресную строку выдало такую строчку

                              http://acz.net/ws_http://acz.net/t1.php?del=1

                              Forbidden получилось. Убрал ws_. Перешло на страницу t1, адрессная строка http://acz.net/t1.php?del=1


                              Так всё нормально записывает, не там строчку $Page1->Edit1->Text = $_GET['del']; прописал

                              Далее сделал на кнопке
                              ExpandedWrap disabled
                                del = DBGrid1.getTableModel().getValue(1, DBGrid1.getFocusedRow());
                                       window.location.href = 'http://acz.net/t1.php?del='+del;


                              Передалось значение текущее, то что выбрал в DBGrid
                              Сообщение отредактировано: TYMON -
                                добавь в т1
                                function Page21Create($sender, $params)
                                {
                                $this->Edit1->Text = $_GET['del'];
                                }
                                и все сработает
                                  Короче у меня такое впечатление что просто надо было выставить кнопке тип Normal.

                                  Потому что щас прописал такой же код как в начале на кнопку:

                                  ExpandedWrap disabled
                                    function Button3JSClick($sender, $params)
                                        {
                                           ?>
                                            //begin js
                                     
                                     del = DBGrid1.getTableModel().getValue(0, DBGrid1.getFocusedRow());
                                           window.location.href = 'http://acz.net/index.php?del='+del;
                                     
                                            //end
                                     
                                           <?php
                                              $this->Edit5->Text = $_GET['del'];
                                     
                                     
                                           }


                                  И заработало

                                  Добавлено
                                  Фууух, работает может кому понадобится удаление текущей записи:

                                  ExpandedWrap disabled
                                    function Button3JSClick($sender, $params)
                                        {
                                           ?>
                                            //begin js
                                     
                                     del = DBGrid1.getTableModel().getValue(0, DBGrid1.getFocusedRow());
                                       //  del=1;
                                          //window.
                                          window.location.href = 'http://acz.net/index.php?del='+del;
                                     
                                            //end
                                     
                                           <?php
                                     
                                            $udalit = $_GET['del'];
                                            mysql_query("DELETE FROM specialist WHERE (FIO_specialist='{$udalit}')");
                                           }


                                  Спасибо большое Eremeev
                                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                  0 пользователей:


                                  Рейтинг@Mail.ru
                                  [ Script execution time: 0,0452 ]   [ 16 queries used ]   [ Generated: 28.03.24, 10:38 GMT ]