| |
|
|
| | Вот файл:
<?php
include("../users/index.php");
// Устанавливаем соединение с БД
require_once("../admin/config.php");
// Проверяем, не вводил ли информацию о себе пользователь ранее.
$query = "SELECT * FROM user_info WHERE id_users = '$id'";
$usr = mysql_query($query);
$info = mysql_fetch_array($usr);
$login=$info['login'];
$pol=$info['pol'];
$bithday=$info['bithday'];
$dev_surname=$info['dev_surname'];
$otchestvo=$info['otchestvo'];
$bithday_sity=$info['bithday_sity'];
$fam_statys=$info['fam_statys'];
$dopolnitelno=$info['dopolnitelno'];
?>
<form method="post">
<table border="0">
<tr>
<td colspan="2"><b>Персональные данные:</b></td>
</tr>
<tr>
<td>Логин:</td>
<td><input type="text" name="login" size="30" value= <?php echo "$login"; ?> ></td>
</tr>
<tr>
<td>Фамилия:</td>
<td><input type="text" name="surname" size="30" value= <?php echo "$surname"; ?> ></td>
</tr>
<tr>
<td>Имя:</td>
<td><input type="text" name="name" size="30" value= <?php echo "$name"; ?> ></td>
</tr>
<tr>
<td>Пол:</td>
<td>
<input type="radio" name="pol" onChange="dfamilia(1, this)">Муж
<input type="radio" name="pol" onChange="dfamilia(2, this)" checked>Жен
</td>
</tr>
<script>
function dfamilia(which, obj)
{
obj.form.dsurname.disabled = !(
(which==1 && !obj.checked) ||
(which==2 && obj.checked)
);
}
</script>
<tr>
<td>Девичья фамилия:</td>
<td><input type="text" name="dsurname" size="30" value= <?php echo "$dev_surname"; ?> ></td>
</tr>
<tr>
<td>Отчество:</td>
<td><input type="text" name="otchestvo" size="30" value= <?php echo "$otchestvo"; ?> ></td>
<tr>
<tr>
<td>Дата рождения :</td>
<td>
<?php
// Выпадающий список для дня
echo "<select class=input type=text name='date_day'>";
for($i = 1; $i <= 31; $i++)
{
if($date_day == $i) $temp = "selected";
else $temp = "";
echo "<option value=$i $temp>".sprintf("%02d", $i);
}
echo "</select>";
// Выпадающий список для месяца
?>
<select name =date_month>
<option value=1>Январь (01)</option>
<option value=2>Февраль (02)</option>
<option value=3>Март (03)</option>
<option value=4>Апрель (04)</option>
<option value=5>Май (05)</option>
<option value=6>Июнь (06)</option>
<option value=7>Июль (07)</option>
<option value=8>Август (08)</option>
<option value=9>Сентябрь (09)</option>
<option value=10>Октябрь (10)</option>
<option value=11>Ноябрь (11)</option>
<option value=12>Декабрь (12)</option>
<?php
// Выпадающий список для года
echo "<select class=input type=text name='date_year'>";
for($i = 1940; $i <= 2010; $i++)
{
if($date_year == $i) $temp = "selected";
else $temp = "";
echo "<option value=$i $temp>$i";
}
echo "</select><br>";
?>
</td>
</tr>
<tr>
<td>Место рождения:</td>
<td><input type="text" name="bithday_sity" size="30" value= <?php echo "$bithday_sity"; ?> ></td>
<tr>
<tr>
<td>Семейное положение:</td>
<td>
<select name="fam_statys">
<option value="1">холост / не замужем</option>
<option value="2">женат / за мужем</option>
<option value="3">вдовец / вдова</option>
<option value="4">разведен / разведена</option>
</select>
</td>
</tr>
<tr>
<td>Дополнительно:</td>
<td><textarea name=dopolnitelno rows=10 cols=40 value= <?php echo "$dopolnitelno"; ?> ></textarea></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Сохранить"></td>
</tr>
</table>
</form>
<?php
// Обработчик php формы.
///////////////////////////////////////////
// Получаем данные
///////////////////////////////////////////
$login = trim($_POST['login']);
$surname = trim($_POST['surname']);
$name = trim($_POST['name']);
$pol = $_POST['pol'];
$dsurname = trim($_POST['dsurname']);
$otchestvo = trim($_POST['otchestvo']);
$date_day = $_POST['date_day'];
$date_month = $_POST['date_month'];
$date_year = $_POST['date_year'];
$bithday = $date_year."-".$date_month."-".$date_day;
$bithday_sity = trim($_POST['bithday_sity']);
$fam_statys = trim($_POST['fam_statys']);
$dopolnitelno = trim($_POST['dopolnitelno']);
///////////////////////////////////////////
// Блок проверки правильности ввода данных
///////////////////////////////////////////
// Если на сервере не включены "магические кавычки",
// обрабатываем введенные пользователем данные
// функцией mysql_escape_string()
if (!get_magic_quotes_gpc())
{
$login = mysql_escape_string($login);
$surname = mysql_escape_string($surname);
$dsurname = mysql_escape_string($dsurname);
$otchestvo = mysql_escape_string($otchestvo);
$bithday_sity = mysql_escape_string($bithday_sity);
$dopolnitelno = mysql_escape_string($dopolnitelno);
}
////////////////////////////////////////////////
// Блок внесения информации о пользователе
////////////////////////////////////////////////
echo "$id<br>$login<br>$pol<br>$bithday<br>$dsurname<br>$otchestvo<br>$bithday_sity<br>$fam_statys<br>$dopolnitelno";
// Подключаемся к БД
require_once("../admin/config.php");
// Формируем и выполняем SQL-запрос на
// добавление информации о пользователе
$query = "INSERT INTO user_info
VALUES(NULL,
'$id',
'$login',
'$pol',
'$bithday',
'$dsurname',
'$otchestvo',
'$bithday_sity',
'$fam_statys',
'$dopolnitelno')";
if(mysql_query($query))
{
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh'
CONTENT='0; URL=../users/index.php'>
</HEAD></HTML>";
} else exit(" Ошибка при добавлении информации о пользователе -".mysql_error());
?>
|
1) выводит ошибку: "Ошибка при добавлении информации о пользователе -Column count doesn't match value count at row 1" | |
| |
|
|
| |
|
|
| |
для: Dizels
(17.10.2007 в 12:44)
| | |
'$id' замени $id это же число !
|
| |
| |
|
|
| |
|
|
| |
для: Dizels
(17.10.2007 в 12:44)
| | | можно дамп? | |
| |
|
|
| |
|
|
| |
для: bronenos
(17.10.2007 в 14:29)
| | |
--
-- Структура таблицы `user_info`
--
CREATE TABLE `user_info` (
`id_users` int(11) NOT NULL default '0',
`login` tinytext NOT NULL,
`pol` char(3) NOT NULL default '',
`bithday` date NOT NULL default '0000-00-00',
`dev_surname` tinytext NOT NULL,
`otchestvo` tinytext NOT NULL,
`bithday_sity` tinytext NOT NULL,
`fam_statys` varchar(4) NOT NULL default '',
`dopolnitelno` text NOT NULL,
KEY `id_users` (`id_users`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
|
| |
| |
|
|
| |
|
|
| |
для: Dizels
(17.10.2007 в 18:04)
| | |
$query = "INSERT INTO user_info
VALUES(NULL,
'$login',
'$pol',
'$bithday',
'$dsurname',
'$otchestvo',
'$bithday_sity',
'$fam_statys',
'$dopolnitelno'
)";
|
| |
| |
|
|
| |
|
|
| |
для: bronenos
(17.10.2007 в 18:26)
| | | VALUES(NULL, в столбец id_users вносится цифра, по которой я потом идентифицирую пользователя из другой таблицы, так что там ну никак не NULL - там должена быть переменная $id. Но вот почему не работает? :( | |
| |
|
|
| |
|
|
| |
для: Dizels
(17.10.2007 в 18:31)
| | | вы сделайте такой запрос, что я показал - ибо там значение вставяется само, чтоб не было повторных, а получить то, что вставилось в это поле можно с помощью
mysql_insert_id(db_connection);
|
| |
| |
|
|
| |
|
|
| |
для: Dizels
(17.10.2007 в 18:31)
| | | id_user - уникальным, автоинкрементом сделайте. Если будет так, то NULL - верно | |
| |
|
|
| |
|
|
| |
для: mihdan
(18.10.2007 в 13:23)
| | | тьфу мля, я думал он итак сделал как надо, понадеялся, а оказывается у него еще и тут ошибка.. | |
| |
|
|
| |
|
|
| |
для: bronenos
(18.10.2007 в 14:18)
| | | Да да | |
| |
|
|
| |
|
|
| |
для: mihdan
(18.10.2007 в 19:12)
| | | Да блин - мне не нужно его делать автоинкрементом, так как у меня есть еще таблица users в которой тоже есть поле id_user и вот оно автоинкремент и соединяю я эти 2 таблицы именно по этому полю!
Впринципе ошибку я нашел, там получалось, что я на 1 данное больше передовал, так что спс. | |
| |
|
|