[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Занесение даты в MYSQL
sasha1076
Добрый день.! Помогите, пожалуйста, с такой проблемой. Очень очень буду благодарен,и с меня много пива.
Суть вот в чём. Есть файл с именем zakaz.php в котором существует простая форма для воода пользователем данных и всё. Это по сути своей простой HTML код, за исключением вывода даты в виде такого куска кода
PHP
<?
$day=date('j');
$month=date('n');
$year=date('Y');
echo 
"$day.$month.$year" 

Далее данные из этой формы передаются обработчику obrabotka.php. В котором записано соединение с базой данных и такой запрос, вернее вставка в БД
PHP
$result mysql_query("INSERT INTO zakaz (fio_oper,fio_mened,id,articul,naimen,kolich,day,month,year,status) VALUES ('$fio_oper','$fio_mened','$id','$articul','$naimen','$kolich','$day','$month','$year','необработан')",$db);


Вот здесь у меня и возникает проблемма, данные в БД , а именно день месяц и год - не заносятся.
Помогите, пожалуйста разобраться в чём суть проблеммы.



Спустя 16 минут, 41 секунда (11.01.2009 - 22:07) kirik написал(а):
а в фале obrabotka.php у вас обозначены эти переменные?-
PHP
$day=date('j');
$month=date('n');
$year=date('Y');

Спустя 11 часов, 31 минута, 49 секунд (12.01.2009 - 09:39) sasha1076 написал(а):
kirik
Спасибо что откликнулся, нет, не обозначены, я пробовал точно также прописать, до строки соединения с базой данных $day=date('j');
$month=date('n');
$year=date('Y'); но мне выдаёт ошибку

Спустя 3 часа, 35 минут, 59 секунд (12.01.2009 - 13:15) sergeiss написал(а):
Я лично вижу несколько возможных причин (каждая по отдельности или обе сразу). Более вероятна первая
1. DAY, MONTH и YEAR являются зарезервированными словами в SQL. Поэтому надо либо вообще не использовать их как названия полей (я предпочитаю этот вариант), либо "закрывать" обратными кавычками (в английском регистре на букве Ё находится) - это при указании полей в INSERT.
2. Какого типа эти поля? Целого или символьного?
Согласно команде, они символьные - потому что величины в кавычках. А если они целого типа, то должны быть без кавычек.

Спустя 3 часа, 28 минут, 25 секунд (12.01.2009 - 16:43) sasha1076 написал(а):
sergeiss
Я переделал названия полей DAY, MONTH и YEAR . Всё равно не получилось. Может я косячу в MYSQL с типами данных этих полей? у меня были простые varchar , когда я поменял типы на DATE- записалось, но записались одни нули. И ещё, просто в файл zakaz.php добавил поля
HTML
<input name="den" type="hidden" value="<?php echo (date("j")); ?>" />
<input name="mes" type="hidden" value="<?php echo (date("n")); ?>" />
<input name="god" type="hidden" value="<?php echo (date("Y")); ?>" />

Спустя 47 минут, 25 секунд (12.01.2009 - 17:31) sergeiss написал(а):
Переделал названия полей ГДЕ? В базе данных???
По твоему ответу не понятно.

Покажи более полный текст. Чтобы было видно всё, что связано с этими полями.

Спустя 15 минут, 22 секунды (12.01.2009 - 17:46) sasha1076 написал(а):
sergeiss Спасибо тебе большое, что помогаешь))).

в базе данных MYSql у меня есть поля den mes и god )) Тип данных у них varchar. Вот, мне, кажется, что просто нужен не тот тип данных сделать.

я для проверки в файле zakaz.php добавил такую строку, просто форму
PHP
<input name="date" type="hidden" id="date" value="<?php echo (date("Y.m.d")); ?>" />

и сделал в базе данных ещё одну ячейку - date. Вот туда данные записались без проблемм. Вот, как-то так unsure.gif

Спустя 16 минут, 6 секунд (12.01.2009 - 18:02) sergeiss написал(а):
Ну текст-то покажи наконец smile.gif И где данные присваиваются, и где они пишутся. Чтобы не догадываться (а оно мне или кому надо - голову ломать, строя предположения?). А чтобы посмотреть и на полном тексте понять (попробовать), что же не так у тебя сделано.

Спустя 1 час, 16 минут, 39 секунд (12.01.2009 - 19:19) Guest написал(а):
PHP
<html>
<
head>
<
title>Toyspark</title>
<
meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<
style type="text/css">
&
#60;!--
.style1 {
    
color#FF0000;
    
font-weightbold;
}
--&
#62;
</style>
</
head>
<
link href="style.css" rel="stylesheet" type="text/css">
<
body bgcolor="#003300" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
&
#60;!-- ImageReady Slices (1) -->
<center>
<
table id="Table_01" width="1024" height="768" border="0" cellpadding="0" cellspacing="0">
    <?
php
    
require ('up.inc');
    
?>
    <tr>
        <td rowspan="2" background="images/1_02.jpg">
            </td>
        <td bgcolor="#FFFFFF">&nbsp;</td>
        <td rowspan="2" background="images/1_04.jpg">
            </td>
    </tr>
    <tr>
        <td width="990" bgcolor="#FFFFFF" valign="top"><table width="100%" height="621" border="0">
          <tr>
            <td width="30%" height="54"  bgcolor="#CCCCCC"><span class="style1">Сейчас:</span> </br>
        <?
        
echo date ('H:i j  F');
        
?>
        <?php
        
require ('reminder.inc');
        
?>
          <tr>
            <td height="488" colspan="3" valign="top">
<div align="center">            
<form action="zayavka_na_obrabotku.php" method="post" name="in">
<p><strong>ФИО оператора </strong><br>
  <select name="fio_oper">
<option value="Алтаева Кристина">Алтаева Кристина
<option value="Хохлова Светлана">Хохлова Светлана
<option value="Фирсов дмитрий">Фирсов дмитрий
<option value="Никифорова Елена">Никифорова Елена
</select></p> 

<p><strong>ФИО кому направляется заявка</br></strong>
<select name="fio_mened">
<option value="Степанцова Олеся">Степанцова Олеся
<option value="Рачинская Ольга">Рачинская Ольга
<option value="Смагин Дмитрий">Смагин Дмитрий
</select>              
</p> 
<p><strong>ID</strong><br>
  <input name="id" type="text" size="20" maxlength="20" /></p>
<p><strong>Артикул</strong><br>
  <input name="articul" type="text" size="20" maxlength="20" /></p>
<p><strong>Наименование</strong><br>
  <input name="naimen" type="text" size="40" maxlength="60" /></p>
<p><strong>Количество</strong><br>
  <select name="kolich">
<option value="0">
<option value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
<option value="5">5
<option value="6">6
<option value="7">7
<option value="8">8
<option value="9">9
<option value="10">10
<option value="11">11
<option value="12">12
<option value="13">13
<option value="14">14
</select>
</p>
<p>
<b> Текущая дата</b><br>
<?
$den
=date('j');
$mes=date('n');
$god=date('Y');
echo 
"$den.$mes.$god"
?>


</p>
<p><br>

<input name="date" type="hidden" id="date" value="<?php echo (date("Y.m.d")); ?>" />
<input name="den" type="hidden" value="<?php echo (date("j")); ?>" />
<input name="mes" type="hidden" value="<?php echo (date("n")); ?>" />
<input name="god" type="hidden" value="<?php echo (date("Y")); ?>" />
<input name="submit" type="submit" value="Отправить заявку" />
<input name="rezet" type="reset" value="Очистить формы" /></p>


</form>
</div>
            </td>
          </tr>
          
          
        </table>
        
    <?php
    
require ('down.inc');
    
?>
</table>
</center>
<!-- End ImageReady Slices --&am


И Вот сам обработчик

PHP
<html>
<
head>
<
title>Toyspark</title>
<
meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<
style type="text/css">
&
#60;!--
.style1 {
    
color#FF0000;
    
font-weightbold;
}
.
style3 {color#FF0000; font-weight: bold; font-size: 36px; }
.style1 {
    
color#FF0000;
    
font-weightbold;
}
--&
#62;
</style>
</
head>
<
link href="style.css" rel="stylesheet" type="text/css">
<
body bgcolor="#003300" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
&
#60;!-- ImageReady Slices (1) -->
<center>
<
table id="Table_01" width="1024" height="768" border="0" cellpadding="0" cellspacing="0">
    <?
php
    
require ('up.inc');
    
?>
    <tr>
        <td rowspan="2" background="images/1_02.jpg">
            <img src="images/1_02.jpg" width="19" height="646" alt=""></td>
        <td bgcolor="#FFFFFF">&nbsp;</td>
        <td rowspan="2" background="images/1_04.jpg">
            <img src="images/1_04.jpg" width="15" height="646" alt=""></td>
    </tr>
    <tr>
        <td width="990" bgcolor="#FFFFFF" valign="top"><table width="100%" height="526" border="0">
          <tr>
            <td width="30%" height="54"  bgcolor="#CCCCCC"><span class="style1">Сейчас:</span> </br>
        <?
        
echo date ('H:i j  F');
        
?>
        <?php
        
require ('reminder.inc');
        
?>
          <tr>
            <td colspan="3" valign="top">
            
            
<hr color="#000099"></hr>    

        
<?php

#===================================================================
if (isset ($_POST['fio_oper']))
{
$fio_oper $_POST['fio_oper'];
}


if (isset (
$_POST['fio_mened']))
{
$fio_mened $_POST['fio_mened'];
}



if (isset (
$_POST['id']))
{
$id $_POST['id'];
}


if (isset (
$_POST['articul']))
{
$articul $_POST['articul'];
}



if (isset (
$_POST['naimen']))
{
$naimen $_POST['naimen'];
}




if (isset (
$_POST['kolich']))
{
$kolich $_POST['kolich'];
}



if (isset (
$_POST['date']))
{
$date $_POST['date'];
}




if (!isset(
$_POST['id'])) 
{
echo 
'Вы ввели не все данные в форму';
exit;
}
#===================================================================
             
$db mysql_connect("localhost","spark","12345");
mysql_select_db("kidspark",$db);

if (
mysqli_connect_errno())
{
echo 
'Нет соединения с Базой Данных';
exit;
}
$data=date('j F');
$result mysql_query("INSERT INTO zakaz (fio_oper,fio_mened,id,articul,naimen,kolich,date,den,mes,god,status) VALUES ('$fio_oper','$fio_mened','$id','$articul','$naimen','$kolich','$date','12','январь','2009','необработан')",$db);

$data=date('j F');

if (
$result =='true')
{
echo 
"<span class=\"style3\">
        </hr>
        Заявка успешно внесена</span>"
;
}
else
{
echo 
"<span class=\"style3\">
        </hr>
        Заявка НЕ внесена</span>"
;    
}
?>
<hr color="#000099"></hr>
        </table>
    <?php
    
require ('down.inc');
    
?>
</table>
</center>
<!-- End ImageReady Slices --&am

Спустя 2 минуты, 58 секунд (12.01.2009 - 19:22) Guest написал(а):
Ой, я менял уже обработчик вот он
PHP
<html>
<
head>
<
title>Toyspark</title>
<
meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<
style type="text/css">
&
#60;!--
.style1 {
    
color#FF0000;
    
font-weightbold;
}
.
style3 {color#FF0000; font-weight: bold; font-size: 36px; }
.style1 {
    
color#FF0000;
    
font-weightbold;
}
--&
#62;
</style>
</
head>
<
link href="style.css" rel="stylesheet" type="text/css">
<
body bgcolor="#003300" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
&
#60;!-- ImageReady Slices (1) -->
<center>
<
table id="Table_01" width="1024" height="768" border="0" cellpadding="0" cellspacing="0">
    <?
php
    
require ('up.inc');
    
?>
    <tr>
        <td rowspan="2" background="images/1_02.jpg">
            <img src="images/1_02.jpg" width="19" height="646" alt=""></td>
        <td bgcolor="#FFFFFF">&nbsp;</td>
        <td rowspan="2" background="images/1_04.jpg">
            <img src="images/1_04.jpg" width="15" height="646" alt=""></td>
    </tr>
    <tr>
        <td width="990" bgcolor="#FFFFFF" valign="top"><table width="100%" height="526" border="0">
          <tr>
            <td width="30%" height="54"  bgcolor="#CCCCCC"><span class="style1">Сейчас:</span> </br>
        <?
        
echo date ('H:i j  F');
        
?>
        <?php
        
require ('reminder.inc');
        
?>
          <tr>
            <td colspan="3" valign="top">
            
            
<hr color="#000099"></hr>    

        
<?php

#===================================================================
if (isset ($_POST['fio_oper']))
{
$fio_oper $_POST['fio_oper'];
}


if (isset (
$_POST['fio_mened']))
{
$fio_mened $_POST['fio_mened'];
}



if (isset (
$_POST['id']))
{
$id $_POST['id'];
}


if (isset (
$_POST['articul']))
{
$articul $_POST['articul'];
}



if (isset (
$_POST['naimen']))
{
$naimen $_POST['naimen'];
}




if (isset (
$_POST['kolich']))
{
$kolich $_POST['kolich'];
}



if (isset (
$_POST['date']))
{
$date $_POST['date'];
}




if (!isset(
$_POST['id'])) 
{
echo 
'Вы ввели не все данные в форму';
exit;
}
#===================================================================
             
$db mysql_connect("localhost","spark","12345");
mysql_select_db("kidspark",$db);

if (
mysqli_connect_errno())
{
echo 
'Нет соединения с Базой Данных';
exit;
}
$data=date('j F');
$result mysql_query("INSERT INTO zakaz (fio_oper,fio_mened,id,articul,naimen,kolich,date,den,mes,god,status) VALUES ('$fio_oper','$fio_mened','$id','$articul','$naimen','$kolich','$date','$den','$mes','$year','необработан')",$db);

$data=date('j F');

if (
$result =='true')
{
echo 
"<span class=\"style3\">
        </hr>
        Заявка успешно внесена</span>"
;
}
else
{
echo 
"<span class=\"style3\">
        </hr>
        Заявка НЕ внесена</span>"
;    
}
?>
<hr color="#000099"></hr>
        </table>
    <?php
    
require ('down.inc');
    
?>
</table>
</center>
<!-- En

Спустя 23 минуты, 44 секунды (12.01.2009 - 19:46) sergeiss написал(а):
Во-первых, это просто жестоко smile.gif по отношению к пользователю. Если он внёс не все данные, то надо вывести ему то, что он уже указывал. Иначе он может просто послать подальше.
То есть, в случае неполных данных надо сначала вывести заново форму для ввода, и указать, что не было введено, чтобы юзер мог ввести только недостающую часть.
А представь, что у тебя будет 50 полей, в одном человек ошибётся... И что - ему все 50 полей заново вводить?

А во-вторых, мне лично совершенно непонятно условие if ($result =='true')... Почему вдруг результат запроса будет равен символьной строке 'true'???
Попробуй переписать эту часть так:
PHP
if ( !$result)
{
echo 
"<span class=\"style3\">
        </hr>
        Заявка НЕ внесена</span>"
;    
}
else
{
echo 
"<span class=\"style3\">
        </hr>
        Заявка успешно внесена</span>"
;
}


Затем. Величины для полей целого типа не надо заключать в кавычки! А мне так кажется, что id у тебя, скорее всего, целого типа (а ты так и не показал структуру таблицы, хотя я и говорил об этом 2 раза smile.gif, поэтому мне приходится только предполагать).

И еще, рекомендации по отладке.
Запиши запрос в какую-то переменную. Например,
$request="INSERT .....";
Тогда ты потом сможешь вывести на экран запрос и попобовать его запустить в программе работы с БД.

Заодно и глазами оценишь. Вдруг у тебя там где-то пустые данные?

Да и просто посмотреть данные не повредит перед тем, как из писать в БД.

Вопрос. ГДЕ у тебя это всё?????

Спустя 14 часов, 4 минуты, 25 секунд (13.01.2009 - 09:50) sasha1076 написал(а):
sergeiss
Цитата
Во-первых, это просто жестоко smile.gif по отношению к пользователю. Если он внёс не все данные, то надо вывести ему то, что он уже указывал.

Lf// признаю, жестоко и даже очень, только у меня не получается написать, что если чито-то не ввёл, то выдать окно. Мне сказали, что это на java скрипте надо писать, а я его вообще не знаю unsure.gif
А на счёт структуры самой бд, я всю всю прогу, вместе с бэкапом выложил на айфолдер. Просто не знаю как структуру таблицы(((

http://ifolder.ru/10002243
И последнее, мне уже перед тобой стыдно. Давай я по яндекс деньгам тебе перешлю за помощь(

Спустя 1 час, 16 минут, 55 секунд (13.01.2009 - 11:07) sergeiss написал(а):
Денег мне не надо smile.gif (пока tongue.gif ))

"Если что-то не то ввёл" - это и на ПХП легко делается. Используй данные, полученные через $_POST, чтобы вывести величину value для нужного поля.

И на ifolder я не пойду, честно говоря. Выкладывай тут структуру таблицы. Вовсе не обязательно, что я подскажу. Есть тут много умных людей, которые могут помочь. Один может что-то не заметить, другой... Но кто-то подскажет.

Спустя 9 часов, 27 минут, 3 секунды (13.01.2009 - 20:34) kirik написал(а):
sergeiss,
Структура -
SQL
CREATE TABLE `zakaz` (
`id` int(5) NOT NULL,
`articul` int(5) NOT NULL,
`naimen` varchar(255) NOT NULL,
`kolich` int(5) NOT NULL,
`nalich` varchar(255) NOT NULL,
`date` date NOT NULL,
`date_ob` date NOT NULL,
`fio_mened` varchar(255) NOT NULL,
`fio_oper` varchar(255) NOT NULL,
`status` varchar(255) NOT NULL,
`nom` int(30) NOT NULL auto_increment,
`id_an` int(5) NOT NULL,
`id_an2` int(5) NOT NULL,
`id_an3` int(5) NOT NULL,
`id_an4` int(5) NOT NULL,
`articul_an` int(5) NOT NULL,
`articul_an2` int(5) NOT NULL,
`articul_an3` int(5) NOT NULL,
`articul_an4` int(5) NOT NULL,
`naimen_an` varchar(255) NOT NULL,
`naimen_an2` varchar(255) NOT NULL,
`naimen_an3` varchar(255) NOT NULL,
`naimen_an4` varchar(255) NOT NULL,
`kolich_an` varchar(255) NOT NULL,
`kolich_an2` varchar(255) NOT NULL,
`kolich_an3` varchar(255) NOT NULL,
`kolich_an4` varchar(255) NOT NULL,
`date_an` date NOT NULL,
`date_an2` date NOT NULL,
`date_an3` date NOT NULL,
`date_an4` date NOT NULL,
PRIMARY KEY (`nom`)
) ENGINE=MyISAM;

Спустя 13 часов, 12 минут, 21 секунда (14.01.2009 - 09:46) sasha1076 написал(а):
kirik
Спасибо)
Быстрый ответ:

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