Jump to content
  • 0

Обновление данных в таблице


Kisa1993
 Share

Question

В базе есть таблица glavnaya которая имеет 3 поля (id,zag,text)

Нужно с помощью формы на сайте ИЗМЕНЯТЬ эти данные.

Страница с формой:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="content-type" content="text/html" charset="windows-1251" />
<title>Редактирование записи главной страницы</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>

<body>

<div id="cover">
<div id="head"></div>

<br />
<a href="index.php"><h2 align="center">Вернуться в Администраторский раздел</h2></a>
<br />
<?php

$result = mysql_query("SELECT zag,text FROM glavnaya WHERE id=1");
$myrow = mysql_fetch_array($result);

print <<<HERE
<form name="form1" method="post" action="update_glav.php">
<p>
<label>Введите заголовок новости (1-4 слова)<br>
<input value="$myrow[zag]" type="text" name="title" id="title">
</label>
</p>
<p>
<label>Ведите текст новости (примерно 130 символов)
<textarea name="description" id="description" cols="40" rows="5">$myrow[text]</textarea>
</label>
</p>
<p>
<label>
<input type="submit" name="submit" id="submit" value="Сохранить изменения">
</label>
</p>
</form>

HERE;
?>





</div>
</body>
</html>

Обработчик:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="windows-1251" />
<title>Обработчик</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="cover">
<div id="head"></div>

<br />
<p><h2 align="center">Результат обработки</h2></p>
<br />


<?php

$result = mysql_query ("UPDATE glavnaya SET zag='$zag', text='$text' WHERE id='1'");

if ($result == 'true') {echo "<p>Ваша запись успешно обновлена!</p>";}
else {echo "<p>Ваша запись не обновлена!</p>";}

?>






</div>
</body>
</html>

В полях выводятся текущие значения, но если их изменить, в базу заносятся пустые значения :mellow:

Edited by Kisa1993
Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Изменила:

<?php

$zag = $_POST['zag'];

$text = $_POST['text'];

?>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="windows-1251" />
<title>Обработчик</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="cover">
<div id="head"></div>

<br />
<p><h2 align="center">Результат обработки</h2></p>
<br />


<?php

$result = mysql_query ("UPDATE glavnaya SET zag='$zag', text='$text' WHERE id='1'");

if ($result == 'true') {echo "<p>Ваша запись успешно обновлена!</p>";}
else {echo "<p>Ваша запись не обновлена!</p>";}

?>


</div>
</body>
</html>

Не помогло :(

Edited by Kisa1993
Link to comment
Share on other sites

  • 0

И так не помогло.

<?php
if (isset($_POST['zag']))
{
$zag = $_POST['zag'];}

if (isset($_POST['text']))
{
$text = $_POST['text'];}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="windows-1251" />
<title>Обработчик</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="cover">
<div id="head"></div>

<br />
<p><h2 align="center">Результат обработки</h2></p>
<br />


<?php

$result = mysql_query ("UPDATE glavnaya SET zag='$zag', text='$text' WHERE id='1'");

if ($result == 'true') {echo "<p>Ваша запись успешно обновлена!</p>";}
else {echo "<p>Ваша запись не обновлена!</p>";}

?>

Link to comment
Share on other sites

  • 0


<?php
$zag = $_POST['zag'];
$text = $_POST['text'];
$id = mysql_real_escape_string($_POST['id']);
$result = mysql_query ("UPDATE `glavnaya` SET `zag` = '$zag', `text` = '$text' WHERE `id` = intval($_POST['id'])");
// id можно передавать в скрытом hidden поле в форме обновления данных
if ($result == 'true') {echo "<p>Ваша запись успешно обновлена!</p>";}
else {echo "<p>Ваша запись не обновлена!</p>";}
?>

хотя странно конечно, почему не работает...

UPD: будьте внимательнее: name="description" и name="title" :)

Link to comment
Share on other sites

  • 0

Ураааа :) получилось.

Проблема была в

 <label>Введите заголовок новости (1-4 слова)<br>
<input value="$myrow[zag]" type="text" name="title" id="title">
</label>
</p>
<p>
<label>Ведите текст новости (примерно 130 символов)
<textarea name="description" id="description" cols="40" rows="5">$myrow[text]</textarea>
</label>

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

Только теперь вопрос: почему не получилось, ведь обработчик запрашивает только переменную?

Edited by Kisa1993
Link to comment
Share on other sites

  • 0

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

ну что тут скажешь, только улыбнусь пожалуй :)

Только теперь вопрос: почему не получилось, ведь обработчик запрашивает только переменную?

вы переменной (произвольной/любой) присваиваете значение пришедшее в массиве $_POST[];

значения приходят (опять же, в виде массива) из данных name="text", то есть в $_POST['text'] - находятся те данные, что ввели на другой странице, а в value="какой-то текст" - уже находится сам текст, но если он еще не передан, как в value вообще что-то может быть, верно?

а у вас в value что-то есть, но это "что-то" это данные заранее уже вытащенные из бд и силком туда вставленные :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy