[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Внесение в БД даты рождения с формы.
DoKeRaToR
Всем привет. нужно внести дату рождения в БД с формы, всё перепробывал, не получается... второй час голову ломаю... подскажите как это реализовать.
Сама форма имеет вид:

бла-бла-бла...тут код начала формы...

Введите вашу дату рождения: <br/>
<select
name="select">
<?php
for ($i = 1; $i <= 31; ++$i) : ?>
<option
value="<?php echo $i;?>" <?php if ($bday==$i) print "selected";?>> <?php echo $i;?>
<?php
endfor; ?>
</select>
<select
name="select1">
<?php
for ($i = 1; $i <= 12; ++$i) : ?>
<option
value="<?php echo $i;?>" <?php if ($bday==$i) print "selected";?>> <?php echo $i;?>
<?php
endfor; ?>
</select>
<select
name="select2">
<?php
for ($i = 1940; $i <= 2013; ++$i) : ?>
<option
value="<?php echo $i;?>" <?php if ($bday==$i) print "selected";?>> <?php echo $i;?>
<?php
endfor; ?>
</select> <br>


тра-ля-ля, тут короче другой код формы

<input type="submit" name="submit" value="Дальше" />
</form>


Ввод даты рождения сделал селектом, в котором код с циклом (для уменьшения времени сделал так...).



Спустя 19 часов, 33 минуты, 10 секунд (28.07.2012 - 12:39) Guest написал(а):
что никто не поможет? sad.gif

Спустя 2 часа, 55 минут, 50 секунд (28.07.2012 - 15:34) ihaveabiggun написал(а):
В чем проблема ?

Значения выбранных данных храняться в
$_POST['select'] , $_POST['select1'] , $_POST['select2']

Спустя 8 часов, 25 минут, 58 секунд (29.07.2012 - 00:00) DoKeRaToR написал(а):
Цитата (ihaveabiggun @ 28.07.2012 - 12:34)
В чем проблема ?

Значения выбранных данных храняться в
$_POST['select'] , $_POST['select1'] , $_POST['select2']

ну это я знаю ,я из в переменные занёс, записывал данные в бд примерно так:

$yyy=$_POST['select'];
$mmm=$_POST['select1'];
$ddd=$_POST['select2'];
$x=1;
if($yyy==$x && $mmm=$x){
while($x++<10) // цикл для добавления значений не 1,2,3,4,5,6,7,8,9..., а 01,02,03...и тд...

$yyy='0'.$yyy.'';
$mmm='0'.$mmm.'';
$ddd='0'.$ddd.'';
}
$dat1=date("$ddd-$mmm-$yyy");
$result1= "insert into user(god) values ('$dat1')"; // Вставка значений в базу данных
mysql_query($result1);
mysql_query("INSERT INTO user (god) VALUES ('$dat1')");

в итоге записывается 0000-00-00

Спустя 2 минуты, 2 секунды (29.07.2012 - 00:02) DoKeRaToR написал(а):
упс, код не в тот тэг взял...
//

Цитата (ihaveabiggun @ 28.07.2012 - 12:34)
В чем проблема ?

Значения выбранных данных храняться в
$_POST['select'] , $_POST['select1'] , $_POST['select2']

ну это я знаю ,я из в переменные занёс, записывал данные в бд примерно так:

$yyy=$_POST['select'];
$mmm=$_POST['select1'];
$ddd=$_POST['select2'];
$x=1;
if($yyy==$x && $mmm=$x){
while($x++<10) // цикл для добавления значений не 1,2,3,4,5,6,7,8,9..., а 01,02,03...и тд...

$yyy='0'.$yyy.'';
$mmm='0'.$mmm.'';
$ddd='0'.$ddd.'';
}
$dat1=date("$ddd-$mmm-$yyy");
$result1= "insert into user(god) values ('$dat1')"; // Вставка значений в базу данных
mysql_query($result1);
mysql_query("INSERT INTO user (god) VALUES ('$dat1')");

в итоге записывается 0000-00-00

Спустя 1 минута, 26 секунд (29.07.2012 - 00:04) DoKeRaToR написал(а):
если я даже в цикле ошибся, то без цикла таже фигня записывается "0000-00-00"..

Спустя 2 минуты, 31 секунда (29.07.2012 - 00:06) inpost написал(а):
Данный цикл требует фигурные скобки... Где они?

Спустя 8 минут, 33 секунды (29.07.2012 - 00:15) DoKeRaToR написал(а):
мм. если их поставлю, то заработает?

Спустя 6 минут, 37 секунд (29.07.2012 - 00:22) rooor написал(а):
Цитата
if ($bday==$i) print "selected"

стесняюсь спросить... а переменная $bday одновременно равна и дню, и месяцу и году?

Цитата
$dat1=date("$ddd-$mmm-$yyy");

зачем здесь функция date(), если ты сам приводишь дату к виду 0000-00-00?

Спустя 4 минуты, 20 секунд (29.07.2012 - 00:26) DoKeRaToR написал(а):
блин, работает, только чуток не так, как надо, но исправлю...
теперь надо это как-то вывести...
только ввиде "день-месяц-год"... так не пойдёт

$date=date("d-m-Y");
print $date;

?

Спустя 1 минута, 50 секунд (29.07.2012 - 00:28) Guest написал(а):
Цитата (rooor @ 28.07.2012 - 21:22)
стесняюсь спросить... а переменная $bday одновременно равна и дню, и месяцу и году?

неа..
Цитата (rooor @ 28.07.2012 - 21:22)
зачем здесь функция date(), если ты сам приводишь дату к виду 0000-00-00?

уже нет, всё работает.
сделал так:

$yyy=$_POST['select'];
$mmm=$_POST['select1'];
$ddd=$_POST['select2'];
$x=1;
if($yyy==$x && $mmm=$x){
while($x++<10){ // цикл для добавления значений не 1,2,3,4,5,6,7,8,9..., а 01,02,03...и тд...

$yyy='0'.$yyy.'';
$mmm='0'.$mmm.'';
$ddd='0'.$ddd.'';
}
}

$dat1=date("$ddd-$mmm-$yyy");
$result1= "insert into user(god) values ('$dat1')"; // Вставка значений в базу данных
mysql_query($result1);

Спустя 6 минут, 25 секунд (29.07.2012 - 00:34) rooor написал(а):
Цитата
неа...

а как тогда вот это работает?
<?php for ($i = 1; $i <= 31; ++$i) : ?>
.... <?php if ($bday==$i) print "selected";?>> ....
<?php for ($i = 1; $i <= 12; ++$i) : ?>
.... <?php if ($bday==$i) print "selected";?>> ....
<?php for ($i = 1940; $i <= 2013; ++$i) : ?>
.... <?php if ($bday==$i) print "selected";?>> ....



Цитата
сделал так:

не вижу разницы...

Спустя 1 минута, 34 секунды (29.07.2012 - 00:36) killer8080 написал(а):
выкинь нафиг цикл, он тут не нужен, и давай переменным осмысленные названия, а не select, select2, select3

$_POST['select'] = 2012; 
$_POST['select1'] = 1;
$_POST['select2'] = 1;
if(isset($_POST['select'], $_POST['select1'], $_POST['select2'])
&&
checkdate($_POST['select'], $_POST['select1'], $_POST['select2'])){
$date = sprintf('%d-%02d-%02d', $_POST['select'], $_POST['select1'], $_POST['select2']);
mysql_query("INSERT INTO `user`(`god`) VALUES ('$date')"); // Вставка значений в базу данных
}

Спустя 8 минут, 44 секунды (29.07.2012 - 00:44) DoKeRaToR написал(а):
всем спасибо, разобрался во всём smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.