Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/21: Рейтинг темы: голосов - 21, средняя оценка - 4.57
 Аватар для dozent
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 39

Выборка определенной строки button -ом с таблицы на другую страницу

29.06.2010, 15:25. Показов 4250. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток уважаемые коддеры,

Недавно программируя столкнулся с такой проблемой: хотел писать код для выборки строки с помощью кнопки из определенной таблицы на другую страницу с методом POST. Вроде бы сделал все но результат не очень, дэбагов нет но и строка не переносится при клике соответствующей кнопки.

Файл архив вместе с базой "Выборка.rar" загружено на форум. Просмотрите кто сможет и жду ваших рекомендаций.

Заранее thanks
Вложения
Тип файла: rar Выборка.rar (2.8 Кб, 31 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.06.2010, 15:25
Ответы с готовыми решениями:

Перенос определенной строки из одной таблицы в другую
Доброго времени суток, я новичок в PHP, поэтому ожидаю, что полетит грязь с камнями. Но столкнулся с такой проблемой. У меня есть таблица в...

Скопировать часть строки с определенной позиции и определенной длины в другую строку
Ввести с клавиатуры строку. Скопировать часть строки с определенной позиции и определенной длины в другую строку. Номер позиции и...

CheckBox->Button->переход на другую страницу
Приветствую уважаемый форумчане, подскажите пожалуйста как сделать проверку. Например имеется CheckBox и Button, Если галочка в...

14
 Аватар для ILA
68 / 61 / 11
Регистрация: 10.08.2009
Сообщений: 226
30.06.2010, 12:10
Вот что у тебя формируется в виде кнопки.
PHP
1
<input type='submit' name='".$id_ch."' value='Выбрать'>
Т.е. ты подставляешь вместо имени кнопки значение переменной $id_ch, которое у тебя присваивается
PHP
1
$id_ch=$query['id']
А в принимающем скрипте ожидаешь получения
PHP
1
 $id=$_POST['id_ch'];
Т.е. ждешь, что тебе передастья POST-ом id_ch
Улавливаешь разницу?

В твоем случае пользоваться POST-ом неудобно. Проще сделать GET-запрос, прописаный в каждой кнопке или ссылки рисовать.
0
 Аватар для dozent
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 39
06.07.2010, 15:04  [ТС]
Цитата Сообщение от ILA Посмотреть сообщение
Вот что у тебя формируется в виде кнопки.
PHP
1
<input type='submit' name='".$id_ch."' value='Выбрать'>
Т.е. ты подставляешь вместо имени кнопки значение переменной $id_ch, которое у тебя присваивается
PHP
1
$id_ch=$query['id']
А в принимающем скрипте ожидаешь получения
PHP
1
 $id=$_POST['id_ch'];
Т.е. ждешь, что тебе передастья POST-ом id_ch
Улавливаешь разницу?

В твоем случае пользоваться POST-ом неудобно. Проще сделать GET-запрос, прописаный в каждой кнопке или ссылки рисовать.
Спасибо за совет с методом _GET но он не надежен... Безопаснее это делать с _POST. Я поменял места, т.е.
PHP
1
$id_sh
поставил на значение:
PHP
1
value=".$id_sh."
а имя id_sh но результат опять тот же.
0
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
06.07.2010, 16:41
dozent, как я понял, Вам хотели сказать, что у Вашей кнопки имя генерится динамически, и скрипт, который принимает на обработку эту форму знает имя, которое вы присвоили ему динамически в форме, но не знает имени, которое Вы используете при обработке формы... Сам слабо понял, что написал, по этому на примере:
PHP
1
2
3
4
5
6
7
8
9
10
<?php
...
$name = 'Вот имя которое мы взяли из БД и не передали в скрипт обработчик';
echo '<input type=\'submit\' name='".$name."' value=\'Выбрать\'>';//Вот тут мы присвоили имя, о котором знает POST, но Вы его не используете при обработке( Вы использовали просто id_ch )
//Что бы узнать это динамическое имя кнопки есть 2 выхода ( я знаю 2 )
//1) добавляем имя кнопки в скрытое поле с статическим именем
echo '<input type="hidden" name="botton_name" value="' . $name . '" />';
//2) я напишу в следующем листинге:)
...
?>
Скрипт, которые обрабатывает форму:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
...
//Узнаем имя кнопки, которое передали в скрытом поле
$botton_name = $_POST['botton_name'];
//Теперь можем использовать эту переменную для определения имени кнопки в массиве POST
$id = $_POST['$botton_name'];
//Теперь переменная id содержит значение, которое вы присвоили в форме
//2) теперь второй способ
//Он заключается в получении всех ключей переданного массива POST
$names = array_keys( $_POST );
//Теперь массив $names в каждом индексе содержит имена всех ключей массива $_POST
..
?>
Старался понятно объяснить, если не вышло, то спрашивайте
P.S. Я надеюсь, что правильно понял проблему
1
 Аватар для dozent
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 39
28.07.2010, 10:45  [ТС]
romchiksoad,

Предложенные выходы Вами помогли..... но хотел немножко улучшить метод кодировки и решил сделать все ето через checkbox и без метода POST:
PHP
1
<input type="button" value="Выбрать" onclick="parent.location=''query_rezerv.php?id=' . $line['id'] . '">
т.е. выбирая несколько строк чекбоксом затем при нажатии button -а ожидал резултат выборки несколько строк в query_rezerv.php... а результат зеро
0
Благотворец
 Аватар для arvitaly
142 / 122 / 13
Регистрация: 29.04.2009
Сообщений: 537
28.07.2010, 12:39
HTML5
1
<input type="button" value="Выбрать" onclick="parent.location=''query_rezerv.php?id=' . $line['id'] . '">
Что за извращение

Страница на которую ты сабмитишь должна указываться в <form action="..."
а кнопка должна быть <input type="submit"
либо нужно javascript'ом сабмитить форму forms['...'].submit();
0
 Аватар для dozent
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 39
28.07.2010, 15:06  [ТС]
arvitaly

Никакое ето не извращение, просто процедура делается без участия метода POST
0
Благотворец
 Аватар для arvitaly
142 / 122 / 13
Регистрация: 29.04.2009
Сообщений: 537
28.07.2010, 15:07
Никакое ето не извращение, просто процедура делается без участия метода POST
Для чего?
0
 Аватар для dozent
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 39
28.07.2010, 15:20  [ТС]
Вкрации повторяюсь заново, есть база с данными: id, name, gorod, address. Сначала все читается и показывается все в таблице, рядом с каждой строкой будет печатаься чекбоксы, а в конце стоит button при нажатии которой каждый выбранный чекбокс вместе со всей строкой выбирается для дальнейшей обработки... ввод дополнительных инфы.
0
Благотворец
 Аватар для arvitaly
142 / 122 / 13
Регистрация: 29.04.2009
Сообщений: 537
28.07.2010, 15:44
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<form method="POST">
    <input type="checkbox" value="0" name="check[]" /><input type="text" name="name[]" value="Вадим" />
    <input type="checkbox" value="1" name="check[]" /><input type="text" name="name[]" value="Олег" />
    <input type="checkbox" value="2" name="check[]" /><input type="text" name="name[]" value="Игорь" />
    <input type="checkbox" value="3" name="check[]" /><input type="text" name="name[]" value="Михаил" />
    <input type="submit" value="Отправить" value="1" name="submit" />
</form>
<?php
    if (isset($_POST['submit']))
    {
        echo '<p><b>Выбранные имена</b></p>';
        $i=0;
        foreach ($_POST['check'] as $p)
        {
            echo '<p>' . $name[$p] . '</p>';
            $i++;
        }
    }
?>
На пример
0
 Аватар для dozent
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 39
28.07.2010, 16:00  [ТС]
Раньше когда хотел сделать с методом POST код был таков:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
print "<form name='Rezfrm' action='query_rezerv.php' method='POST' target='_parent'>";
 
  /*считывание данных*/
  $query = "select id, fio, gorod, adres, dom, comment from baza.zayavka;";
  $result = mysql_query($query) or die("Query failed : " . mysql_error());
  $id_ch=$query['id'];
 
  /* Выводим результаты в html */
  print "<table  bgcolor=#D9E7F2 cellspacing=0 cellpadding=3 border=3 align=left style=\"border-style:solid; border-color:#1A658C\">\n";
  print "<tr>";
  print "<td style=\"color:#FFFFFF;background-color:#000099;border-style:solid; border-color:#1A658C; border-width:1px;\">ID</td>\n";
  print "<td style=\"color:#FFFFFF;background-color:#000099;border-style:solid; border-color:#1A658C; border-width:1px;\">ФИО</td>\n";
  print "<td style=\"color:#FFFFFF;background-color:#000099;border-style:solid; border-color:#1A658C; border-width:1px;\">Город</td>\n";
  print "<td style=\"color:#FFFFFF;background-color:#000099;border-style:solid; border-color:#1A658C; border-width:1px;\">Адрес</td>\n";
  print "<td style=\"color:#FFFFFF;background-color:#000099;border-style:solid; border-color:#1A658C; border-width:1px;\">Дом</td>\n";
  print "<td style=\"color:#FFFFFF;background-color:#000099;border-style:solid; border-color:#1A658C; border-width:1px;\">Комментарии</td>\n";
  print "<td style=\"color:#FFFFFF;background-color:#000099;border-style:solid; border-color:#1A658C; border-width:1px;\">Изменить</td>\n";
  print "</tr>\n";
  while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
    print "<tr>";
      foreach ($line as $col_value) {
        print "<td style=\"border-style:solid; border-color:#000099; border-width:1px;\">".$col_value."</td>\n";
      }
      print "<td style=\"border-style:solid; border-color:#000099; border-width:1px;\"><input type='checkbox' name='".$line[id]."'></td>\n";
      }
      print "</tr>\n";
    print "<td colspan=\"7\" style=\"border-style:solid; border-color:#000099; border-width:1px;\"><input type='checkbox' name='".$line[id]."'></td>\n";
    }
  print "</table>\n";
 
print "</form>";
но процедура не срабатывала (посмотри может найдешь какой нибудь прокол)

Цель: Есть таблица в базе, хочется сделать так, чтобы при выборе чекбоксов напротив строки и нажатием кнопки перетащилась вся строка на другую страницу, где будет печететься напротив каждой выбранной строки textbox -ы чтобы внести дополнения.
0
4 / 4 / 0
Регистрация: 19.07.2010
Сообщений: 59
28.07.2010, 19:23
PHP
1
2
$max=$_SESSION['max'];
$tra=$_SESSION['tra'];
1 ошибку нашел - исправил
0
 Аватар для dozent
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 39
30.07.2010, 15:34  [ТС]
Vinogradov

1 $max=$_SESSION['max'];
2 $tra=$_SESSION['tra'];
а причем тут сессия? Я пока процедуру не запускаю по сессиям
0
 Аватар для dozent
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 39
06.08.2010, 16:01  [ТС]
romchiksoad

Решил сделать так;

PHP
1
<input type=\"button\" name=\"button\" value=\"Выбрать\" onclick=\"document.location='query_rezerv.php?id={$line['id']}'\">
метод отправки GET

а страница обработчик query_rezerv.php такой:

PHP
1
2
$id=$_GET['button'];
$query = "SELECT c_id, client_name FROM request WHERE c_id=".$id.";";
которую далее хочу просто напечатать, но результат

HTML5
1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
0
Благотворец
 Аватар для arvitaly
142 / 122 / 13
Регистрация: 29.04.2009
Сообщений: 537
06.08.2010, 19:16
Ну так проверьте в каком месте у вас пустая переменная получается, и что за извращение экранировать кавычки стопицот раз
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.08.2010, 19:16
Помогаю со студенческими работами здесь

Строка: Скопировать часть строки с определенной позиции и определенной длины в другую строку
Скопировать часть строки с определенной позиции и определенной длины в другую строку. Например: дана строка &quot;Функция для работы со...

Тег <button>. Переход на другую страницу по клику
Добрый день, не знал в какую тему задать вопрос, по этому спрошу тут: есть тег &lt;button&gt; в HTML, как сделать переход на другую...

По нажатию на картинку или button перейти на другую страницу
Я только начал разбираться в ASP.NET VMC, мне требуется создать ссылку на другой метод контролера, но только не через ссылку...

Выборка определённой строки в массиве
Объясните теоретическую часть. Т.е у меня есть массив - пусть будем матрицей Мне нужно 2 цикла: 1) Отвечает за количество повторений...

Перенос данных из одной таблицы в другую до определенной даты
Всем привет) Есть кнопка перенести товар после её нажатие происходит перенос данных с одной таблицы в другую и пока не наступила дата...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK сделайте это, JDK, то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Перейдите по ссылке:. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru