PHP код:
<?php
header("Content-Type: text/html; charset=windows-1251");
error_reporting(E_ALL);
?>
<?php
define('HOST', 'localhost');
define('USER', 'root');
define('PASSWORD', '');
define('NAME_BD', 'reestr_shkolnikov');
?>
<?php
$connect = mysql_connect(HOST, USER, PASSWORD)
or die("Невозможно установить соединение".mysql_error( ));
print ("<p style=\"color:green\"\">Соединение с базой установлено успешно!</p>");
mysql_select_db(NAME_BD, $connect)
or die ("Невозможно выбрать указанную базу".mysql_error( ));
?>
<?php
$text=$_GET['id'];
$sql = "SELECT * FROM shkolniki WHERE id=$text";
$result = mysql_query($sql) or die(mysql_error());
while ($row = mysql_fetch_assoc($result))
{
$fio = $row['fio'];
$klass = $row['klass'];
$ocenka_rus = $row['ocenka_rus'];
$ocenka_math = $row['ocenka_math'];
$dateofbirth = $row['dateofbirth'];
$klass_rucovod = $row['klass_rucovod'];
$school_num = $row['school_num'];
}
$first = TRUE;
?>
<div style="padding-top:50px; text-align:center">
Редактирование ученика
<table border="1" align="center" style="">
<tr>
<td style="padding:15px;">
<form action="" method="post">
<p>ФИО ученика:<br> <input name="fio" type="text" size="40" value="<?php echo "$fio" ?>"/></p>
<p>Класс:<br><input name="klass" type="text" size="20" value="<?php echo "$klass" ?>"/></p>
<p>Оценка по рус.языку:<br><input name="ocenka_rus" type="text" value="<?php echo "$ocenka_rus" ?>"/></p>
<p>Оценка по математике:<br><input name="ocenka_math" type="text" value="<?php echo "$ocenka_math" ?>"/></p>
<p>Дата рождения:<br><input name="dateofbirth" type="text" pattern="[0-9]{4,}-[0-2]{2}-[0-9]{2}" value="<?php echo "$dateofbirth" ?>"/></p>
<p>Клас. руководитель:<br> <input name="klass_rucovod" type="text" value="<?php echo "$klass_rucovod" ?>"/></p>
<p>Номер школы:<br> <input name="school_num" type="text" value="<?php echo "$school_num" ?>"/></p>
<input name="ok" type="submit" value="Сохранить изменения"/>
<a href="index.php" style="text-decoration:none;"><input name="cancel" type="button" value="Отмена"/></a>
</form>
</td>
</tr>
</table><br><br>
</div>
<?php
if(!empty($_POST['ok']))
{
$fio=$_POST['fio'];
$klass=$_POST['klass'];
$ocenka_rus=$_POST['ocenka_rus'];
$ocenka_math=$_POST['ocenka_math'];
$dateofbirth=$_POST['dateofbirth'];
$klass_rucovod=$_POST['klass_rucovod'];
$school_num=$_POST['school_num'];
$sql = "UPDATE shkolniki SET fio='$fio', klass='$klass', ocenka_rus='$ocenka_rus', ocenka_math='$ocenka_math', dateofbirth='$dateofbirth', klass_rucovod='$klass_rucovod', school_num='$school_num' WHERE id=$text";
$result = mysql_query($sql) or die(mysql_error());
echo "<p style=\"color:green;text-align:center;font-size:17px;\">Изменения сохранены!<br>Сейчас вы будете переадресованы на главную страницу</p>";
echo '<meta http-equiv="Refresh" content="2;url=index.php"/>';
mysql_close($connect);
}
?>
Собственно выше указан код файла update.php. Он открывается из главной страницы, при этом при открытии, поля формы заполнены. Потом меняю какие либо данные, нажимаю - сохранить изменения(изменения сохраняются), но после того как вот этот код срабатывает:
PHP код:
<?php
if(!empty($_POST['ok']))
{
$fio=$_POST['fio'];
$klass=$_POST['klass'];
$ocenka_rus=$_POST['ocenka_rus'];
$ocenka_math=$_POST['ocenka_math'];
$dateofbirth=$_POST['dateofbirth'];
$klass_rucovod=$_POST['klass_rucovod'];
$school_num=$_POST['school_num'];
$sql = "UPDATE shkolniki SET fio='$fio', klass='$klass', ocenka_rus='$ocenka_rus', ocenka_math='$ocenka_math', dateofbirth='$dateofbirth', klass_rucovod='$klass_rucovod', school_num='$school_num' WHERE id=$text";
$result = mysql_query($sql) or die(mysql_error());
echo "<p style=\"color:green;text-align:center;font-size:17px;\">Изменения сохранены!<br>Сейчас вы будете переадресованы на главную страницу</p>";
echo '<meta http-equiv="Refresh" content="2;url=index.php"/>';
mysql_close($connect);
}
?>
Форма обновляется(видимо из-за того, что её обработчик в этом же файле лежит), и в обновленной странице в форме старые данные. Потом идет перенаправление на главную index.php через 2 секунды, ну и там в таблице данные нормальные(т.е. сохраняется всё нормально)
Так вот как сделать так, чтобы после нажатия на кнопку "Сохранить изменения" в поля формы уже новые значения попадали, либо поля вообще очищались, всё равно потом через 2 секунды "уйдем" на главную.
Вроде понятно объяснил))