|
|
|
| в базе пишутся данные и к каждой записе дата в виде - 03.10.2006
вот как мне вывести все записе из поля referer те что сделанны сегодня??
не наю просто даже, не сталкивался | |
|
|
|
|
|
|
|
для: Panker
(03.10.2006 в 18:19)
| | пусть имя :
- вашей таблицы - your_table,
- имя поля,в котором хранится ваша дата - my_date,
тогда :
select referer from your_table yt where to_date(yt.my_date) = to_date(sysdate)
|
| |
|
|
|
|
|
|
|
для: servannin
(03.10.2006 в 18:36)
| | хммм простите, а как это обработать? я прост ос мускулом мона сказать третий день :) не всё понимаю даже с подсказки :( | |
|
|
|
|
|
|
|
для: Panker
(03.10.2006 в 20:43)
| | пожалуйсто обьясните мне -
У меян есть таблица stat в нём поле s_referer
если реферал есть в поле написан реферал!
если реферала нет то та пусто
как мне вывести ЧИСЛОМ ( цифрой ) сколько всего в поле s_referer заполненых полей!
тоесть мне нужно сказать пользователю сколько всего на его сайт зашло от реферлов!
допустим поле 100 записей что есть реферал 50, мне нужно вывести 50! не пустые поля, короче сколько всего заполненых полей в поле s_referer | |
|
|
|
|
|
|
|
для: Panker
(04.10.2006 в 12:36)
| | А столбец с календарным типом имеется? Приведите структуру базы данных? Получить её можно при помощи запроса
| |
|
|
|
|
|
|
|
для: cheops
(04.10.2006 в 13:08)
| | я лучше так если можно
--
-- Структура таблицы `stat`
--
CREATE TABLE `stat` (
`id` int(11) NOT NULL auto_increment,
`s_ip` text NOT NULL,
`s_referer` text NOT NULL,
`s_data` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=76 ;
--
-- Дамп данных таблицы `stat`
--
INSERT INTO `stat` VALUES (62, '127.0.0.1', '', '04.10.2006');
INSERT INTO `stat` VALUES (65, '127.0.0.1', 'Нету', '04.10.2006');
|
дата такова формата - $date = date("d.m.Y"); | |
|
|
|
|
|
|
|
для: Panker
(04.10.2006 в 14:11)
| | Вы зря храните дату в текстовом столбце s_date, лучше сделать его типа DATETIME | |
|
|
|
|
|
|
|
для: Panker
(04.10.2006 в 14:11)
| | я не понимаю...то вы говорите про записи за сегодняшний день,то про число рефералов...и как оно может быть пустым , если у вас в скрипте создания таблицы поле
`s_referer` text NOT NULL, то есть оно не может быть пустым как бы ему этого не хотелось....
Пожалуйста, сформулируйте более чётко ,что вы хотите получить.
select count(s_referer) from stat where s_referer <> ' ';
|
[поправлено модератором] | |
|
|
|
|
|
|
|
для: servannin
(04.10.2006 в 15:15)
| | это я не понимаю что вы говорите, пустой это значит НЕ НЕ КАКОЙ ЗАПИСИ!
to cheops а мне все гвоорят лучше самому записывать ибо удобней говорять!
если не трудно обьясните какие параметры поля должны быть что бы как вы говорите дада автоматом ставилась | |
|
|
|
|
|
|
|
для: Panker
(04.10.2006 в 22:36)
| | Удобнее может быть только если вы будете хранить дату в секундах, прошедших с 1 января 1970 года, иначе вам не будут доступны функции MySQL для работы с датами, а также сортировка по этому полю будет неправильной. Для создания столбца типа DATETIME следует поступить следующим образом
CREATE TABLE `stat` (
`id` int(11) NOT NULL auto_increment,
`s_ip` text NOT NULL,
`s_referer` text NOT NULL,
`s_data` DATETIME,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=76 ;
|
| |
|
|
|
|
|
|
|
для: cheops
(05.10.2006 в 00:43)
| | а дата должна сама пиатся или я должен её записывать? а то я при записи говорю что поле пустое типа как id что туда не чего не надо писать а у меян оно само пишет всё по нулям '0000-00-00 00:00:00'
CREATE TABLE `stat` (
`id` int(11) NOT NULL auto_increment,
`s_ip` text NOT NULL,
`s_referer` text NOT NULL,
`s_data` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=89 ;
--
-- Дамп данных таблицы `stat`
--
INSERT INTO `stat` VALUES (88, '127.0.0.1', 'Нету', '0000-00-00 00:00:00');
INSERT INTO `stat` VALUES (87, '127.0.0.1', 'Нету', '0000-00-00 00:00:00');
INSERT INTO `stat` VALUES (86, '127.0.0.1', 'Нету', '0000-00-00 00:00:00');
INSERT INTO `stat` VALUES (85, '127.0.0.1', 'Нету', '0000-00-00 00:00:00');
INSERT INTO `stat` VALUES (84, '127.0.0.1', 'Нету', '0000-00-00 00:00:00');
INSERT INTO `stat` VALUES (83, '127.0.0.1', '', '0000-00-00 00:00:00');
|
| |
|
|
|
|
|
|
|
для: Panker
(05.10.2006 в 09:25)
| | Текущую дату получают при помощи функции NOW(), например, запись
INSERT INTO `stat` VALUES (88, '127.0.0.1', 'Нету', '0000-00-00 00:00:00');
|
Вставит текущую дату. | |
|
|
|
|
|
|
|
для: cheops
(05.10.2006 в 10:16)
| | я так понел мне так надо вставлять ?
if(strstr($refer,"http://wwww/"))
{
$ath = mysql_query("INSERT INTO stat VALUES ('', '$ip', 'Нету', '0000-00-00 00:00:00');");
$sql_res=mysql_query($ath,$dbcnx);
}
else
{
$ath = mysql_query("INSERT INTO stat VALUES ('', '$ip', '$refer', '0000-00-00 00:00:00');");
$sql_res=mysql_query($ath,$dbcnx);
}
|
если да то что то дата не пишится или как надо ? что то недопонимаю :(
или мне просто типа делать
$data=data(формат такой типа дата число секунды минуты)
и писать через переменную? | |
|
|
|
|
|
|
|
для: Panker
(05.10.2006 в 11:01)
| | Задумался и не вставил фунцию :))) следует поступить так
<?php
if(strstr($refer,"http://wwww/"))
{
$ath = mysql_query("INSERT INTO stat VALUES ('', '$ip', 'Нету', NOW());");
$sql_res=mysql_query($ath,$dbcnx);
}
else
{
$ath = mysql_query("INSERT INTO stat VALUES ('', '$ip', '$refer', NOW());");
$sql_res=mysql_query($ath,$dbcnx);
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(05.10.2006 в 11:06)
| | всё пасибо :) Работает :) | |
|
|
|