Vlad20220
Новичок
Имеются две одинаковые таблицы mysql (tab1) и (tab2) в них две строки id и name. Выводятся они в форме через цыкл php - do/while, и еще присутствует кнопка <input>
Нужно чтобы при нажатии на кнопку строка из одной таблицы перенеслась в другую и наоборот, но есть проблема.
А теперь подробно:
подключаюсь к базе
require "../connect.php";
выбираю таблицу
$result = mysql_query("SELECT * FROM tab1");
$myrow = mysql_fetch_array($result);
Через цикл вывожу все строки таблицы mysql в таблицу html
do
{
printf ( " <tr><td>".$myrow['id']. "</td> <td> ".$myrow['name']." </td> <td>
<form method='post' name='forma'>
<fieldset>
<input id='submit' type='submit' name='submit' value='перенести'><br/>
</fieldset>
</form>
</td></tr>"
);
если кнопка нажата то передаем в файл-обработчик id с таблицы (?value="$myrow['id']")
if (isset($_POST['submit']))
{
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='0; URL=form.php?value="$myrow['id']"'>
</HEAD></HTML>";
}
}
условие цыкла
while ($myrow = mysql_fetch_array ($result));
Файл обработчик выглядит так
принимаем значение от value
$q = $_GET['value'];
переносим значение с таблицы 1 в таблицу 2
$resultd = mysql_query("SELECT * FROM tab2");
$myrowd = mysql_fetch_array($resultd);
$past = "INSERT INTO `tab1` (`id`, `name`)
SELECT `id`, `name`
FROM `tab1`
WHERE id='$q'";
mysql_query( $past );
и удаляем с первой таблицы
$delete = "DELETE FROM `tab2` WHERE id='$q'";
mysql_query( $delete );
Проблема в том что когда я нажимаю на кнопку в файл обработчик должно передаваться id той строки на которую я нажал, а передается только один последний id и всё.
Если кто то разобрался в том что я тут написал то помогите пожалуйста. Для наглядности кидаю картинку.
Если вы знаете как по другому реализовать задуманное напишите свой вариант
Нужно чтобы при нажатии на кнопку строка из одной таблицы перенеслась в другую и наоборот, но есть проблема.
А теперь подробно:
подключаюсь к базе
require "../connect.php";
выбираю таблицу
$result = mysql_query("SELECT * FROM tab1");
$myrow = mysql_fetch_array($result);
Через цикл вывожу все строки таблицы mysql в таблицу html
do
{
printf ( " <tr><td>".$myrow['id']. "</td> <td> ".$myrow['name']." </td> <td>
<form method='post' name='forma'>
<fieldset>
<input id='submit' type='submit' name='submit' value='перенести'><br/>
</fieldset>
</form>
</td></tr>"
);
если кнопка нажата то передаем в файл-обработчик id с таблицы (?value="$myrow['id']")
if (isset($_POST['submit']))
{
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='0; URL=form.php?value="$myrow['id']"'>
</HEAD></HTML>";
}
}
условие цыкла
while ($myrow = mysql_fetch_array ($result));
Файл обработчик выглядит так
принимаем значение от value
$q = $_GET['value'];
переносим значение с таблицы 1 в таблицу 2
$resultd = mysql_query("SELECT * FROM tab2");
$myrowd = mysql_fetch_array($resultd);
$past = "INSERT INTO `tab1` (`id`, `name`)
SELECT `id`, `name`
FROM `tab1`
WHERE id='$q'";
mysql_query( $past );
и удаляем с первой таблицы
$delete = "DELETE FROM `tab2` WHERE id='$q'";
mysql_query( $delete );
Проблема в том что когда я нажимаю на кнопку в файл обработчик должно передаваться id той строки на которую я нажал, а передается только один последний id и всё.
Если кто то разобрался в том что я тут написал то помогите пожалуйста. Для наглядности кидаю картинку.
Если вы знаете как по другому реализовать задуманное напишите свой вариант
Вложения
-
35,8 KB Просмотры: 6