Код: Выделить всё
<?
function show_form(){
// подключаем файл с настройками подключения к БД
include ("bd.php");
//делаем запрос к БД, на данный момент на следующие две строчки не стоит обращать внимание, объясню их потом, посокльку на данном этапе они еще не используются.
$result = mysql_query("SELECT * FROM yyy WHERE id = '".$_GET['id']."';", $db);
$row = mysql_fetch_array($result);
?>
<!-- далее идет обычный HTML -->
<form action="" method="post">
<table cellspacing="1" cellpadding="2" bgcolor="#1F2760">
<tr bgcolor="#B0ADC3">
<td><p>Страна</p></td>
</tr>
<tr bgcolor="#ffffff">
<td>
<select name="country" >
<?php
function gg_country()
{
return array(
"RU" => "Россия",
"UA" => "Украина",
"BY" => "Беларусь",
"GE" => "Грузия",
"KZ" => "Казахстан",
"US" => "США",
"FR" => "Франция",
"DE" => "Германия",
"PL" => "Польша",
"RO" => "Румыния"
);
}
$lcountry = gg_country();
foreach ($lcountry as $country => $description) {
echo "<option " . ($country == $row['country'] ? "selected='selected'" : "") . " value='{$country}'>{$description}</option>";
}
?>
</select>
</td>
</tr>
<tr>
<td bgcolor="#1F2760" align="right">
<input type="hidden" name="id" value="<?=$_GET['id'];?>">
<input type="submit" value="отправить" name="edit">
</td>
</tr>
</table>
</form>
<?
}
function complete(){
// подключаем файл с настройками подключения - это мы уже знаем.
include ("bd.php");
// делаем запрос к БД в котором пытаемся вытащить страничку с указаным id. На данный момент мы не сделали еще ни одной страницы, посему запрос вернет пустой ряд.
$result = mysql_query("SELECT * FROM yyy WHERE id = '".$_POST['id']."';", $db);
// перекидываем данные из MySQL в пхпшный ассоциативный массив
$row = mysql_fetch_array($result);
// проверяем не пуст ли элемент массива id. Если пуст, значит вставляем наши данные в БД
if(empty($row['id']))
$query = "INSERT INTO yyy (country) VALUES (
'".mysql_real_escape_string($_POST['country'])."',
// а вот если не пуст, значит с этим id уже есть запись и в данном случае мы ее просто отредактируем
else
$query = "UPDATE lgsl SET
country = '".mysql_real_escape_string($_POST['country'])."'
WHERE id = '".$_POST['id']."';";
// непосредственно записываем наши данные в базу (до этого мы просто описывали, что надо сделать, а теперь делаем)
mysql_query($query, $db);
// ну и просто выводим крикливую надпись, что скрипт отработал
echo '<h3>Данные обновлены</h3>';
}
if($_POST['edit']) complete();
if($_GET['id']) show_form();
?>
Вопрос почему после редактирования данные не обновляються?
Но если поменять select на
Код: Выделить всё
<input type="text" name="country" value="<?=htmlspecialchars(stripslashes($row['country']));?>" class="enter" size="79">