Помогите обновить данные в базе данных MySQL

Статус
В этой теме нельзя размещать новые ответы.

medwed

Создатель
Регистрация
8 Фев 2008
Сообщения
30
Реакции
0
Помогите обновить данные в базе.

в этот php файл перадется параемтр red_b, он равняется id в таблице например(red_b=54), с помощью этого параметра передаются данные в форму.

структура таблицы такая:
Поле Тип Сравнение Атрибуты Ноль Дополнительно
id int(11) Нет auto_increment
1 varchar(10) Нет cp1251_general_ci 2 varchar(10) Нет cp1251_general_ci
3 varchar(10) Нет cp1251_general_ci 4 varchar(10) Нет cp1251_general_ci
5 varchar(10) Нет cp1251_general_ci
6 varchar(10) Нет cp1251_general_ci
7 varchar(10) Нет cp1251_general_ci

PHP:
<?php
require_once('config2.php');

$sql = "SELECT * FROM table1";
$result=mysql_query($sql);
$rows=mysql_num_rows($result);


if(isset($_POST['del_b']))
{

  $sql2="delete from table1 where id=".$_POST['del_b'];
  mysql_query($sql2);

}
if(isset($_POST['red_b']))
{

$sql5 = "SELECT * FROM table1 WHERE id=".$_POST['red_b'];
$result=mysql_query($sql5);
$rows=mysql_num_rows($result);
$line=mysql_fetch_row($result);

echo "
<form action='' method='POST'>
<table border='0' width=60% cellpadding='0' cellspacing='0' >
<tr>
  <td align='left' width='35%'>1</td>
  <td align='left'><input type='text' name='1' value='".$line["1"]."' size='10'></td>
</tr>
<tr>
  <td align='left'>2</td>
  <td align='left'><input type='text' name='2' value='".$line["2"]."' size='10'></td>
</tr>
<tr>
  <td align='left'>3</td>
  <td align='left'><input type='text' name='3' value='".$line["3"]."' size='10'></td>
</tr>
<tr>
  <td align='left' width='35%'>4</td>
  <td align='left'><input type='text' name='4' value='".$line["4"]."' size='10'></td>
</tr>
<tr>
  <td align='left'>5</td>
  <td align='left'><input type='text' name='5' value='".$line["5"]."' size='10'></td>
</tr>
<tr>
  <td align='left'>6</td>
  <td align='left'><input type='text' name='6' value='".$line["6"]."' size='10'></td>
</tr>
<tr>
  <td align='left' width='35%'>7</td>
  <td align='left'><input type='text' name='7' value='".$line["7"]."' size='10'></td>
</tr>
<tr>
  <td align='left'</td>
  <td align='left'><input name='enter' type='submit' value='отправить'></td>
  <td align='left'></td>
</tr>
</table>
</form>
";

if(isset($_POST['enter']))
{
[B]// вот то что примерно надо сделать только у меня чтото оно неработает наверное я чтото нетак делаю[/B]
  $sql3="UPDATE table1 SET 1='.$_POST['1'].', 2='.$_POST['2'].',3='.$_POST['3'].',4='.$_POST['4'].',5='.$_POST['5'].',6='.$_POST['6'].',7='.$_POST['7'].' WHERE id=".$_POST['red_b'];
  mysql_query($sql3);
}

}
?>

помогите пожалуйста........
 
Попробуй так:
PHP:
 $sql3="UPDATE table1 SET 1='".$_POST['1']."', 2='".$_POST['2']."',3='".$_POST['3']."',4='".$_POST['4']."',5='".$_POST['5']."',6='".$_POST['6']."',7='".$_POST['7']."' WHERE id=".$_POST['red_b'];
 
оно почемуто неработает может я делаю неправильно организацию нажатия на кнопку....просто запрос составлен то правильно но ничего неизменяется в базе...
 
Напиши так и скажи какую ошибку выдаст
PHP:
$result = mysql_query(ТВОЙ_ЗАПРОС);
	if (!$result) {die('Invalid query: ' . mysql_error());}
 
никакой вообще ошибки нету....
 
попробуй так:

ini_set('display_errors','On');
$result = mysql_query(ТВОЙ_ЗАПРОС);
if (!$result) {die('Invalid query: ' . mysql_error());}
 
ничего по прежнему невыводит.......никакой ошибки ничего...

Добавлено через 21 минуту
я попробывал чуть чуть код изменить

PHP:
<?php
require_once('config2.php');

$sql = "SELECT * FROM table1";
$result=mysql_query($sql);
$rows=mysql_num_rows($result);


if(isset($_POST['del_b']))
{

  $sql2="delete from table1 where id=".$_POST['del_b'];
  mysql_query($sql2);

}
if(isset($_POST['red_b']))
{

$sql5 = "SELECT * FROM table1 WHERE id=".$_POST['red_b'];
$result=mysql_query($sql5);
$rows=mysql_num_rows($result);
$line=mysql_fetch_row($result);

echo "
<form action='' method='POST'>
<table border='0' width=60% cellpadding='0' cellspacing='0' >
<tr>
  <input type=hidden name='update' value='".$_POST['red_b']."'>
  <td align='left' width='35%'>1</td>
  <td align='left'><input type='text' name='1' value='".$line["1"]."' size='10'></td>
</tr>
<tr>
  <td align='left'>2</td>
  <td align='left'><input type='text' name='2' value='".$line["2"]."' size='10'></td>
</tr>
<tr>
  <td align='left'>3</td>
  <td align='left'><input type='text' name='3' value='".$line["3"]."' size='10'></td>
</tr>
<tr>
  <td align='left' width='35%'>4</td>
  <td align='left'><input type='text' name='4' value='".$line["4"]."' size='10'></td>
</tr>
<tr>
  <td align='left'>5</td>
  <td align='left'><input type='text' name='5' value='".$line["5"]."' size='10'></td>
</tr>
<tr>
  <td align='left'>6</td>
  <td align='left'><input type='text' name='6' value='".$line["6"]."' size='10'></td>
</tr>
<tr>
  <td align='left' width='35%'>7</td>
  <td align='left'><input type='text' name='7' value='".$line["7"]."' size='10'></td>
</tr>
<tr>
  <td align='left'</td>
  <td align='left'><input name='enter' type='submit' value='отправить'></td>
  <td align='left'></td>
</tr>
</table>
</form>
";


/*
  $sql2="delete from table1 where id=".$_POST['del_b'];
  mysql_query($sql2);
*/
}

if(isset($_POST['enter']))
{
 $sql3="UPDATE table1 SET 1='".$_POST['1']."', 2='".$_POST['2']."',3='".$_POST['3']."',4='".$_POST['4']."',5='".$_POST['5']."',6='".$_POST['6']."',7='".$_POST['7']."' WHERE id=".$_POST['update'];

ini_set('display_errors','On');
$result = mysql_query($sql3);
if (!$result) {die('Invalid query: ' . mysql_error());} 
}


?>

и после этого выдает такую ошибку:
Invalid query: 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 '1='4311', 2='4311',3='432',4='432',5='43',6='43',7='43' WHERE id
 
все у меня уже получилось я просто обработку этой формы запихнул в другой файл пхп и теперь все прекрасно обнавляет

Добавлено через 1 минуту
тему можете закрыть
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху