Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Выборка из всей базы данных

Сообщения:  [1-10]   [11-17] 

 
 автор: Teleman   (08.07.2007 в 08:07)   письмо автору
 
   для: Trianon   (08.07.2007 в 02:00)
 

Огромное спасибо, в принципе все эти заморочки уже не нужны главное то работает, а остальное пока не важно. Ну если какие вопросы будут то я обращусь. Немного там вам выслал. Ну сколько смог.

   
 
 автор: Trianon   (08.07.2007 в 02:00)   письмо автору
 
   для: Teleman   (07.07.2007 в 23:52)
 

Если требуется дата в более привычном формате, то поможет такой код:
function es2eu_dt($d)
{
    list($d, $s1, $m, $s2, $y, $s3,$hh,$s4,$mm,$s5,$ss)
      = sscanf("$dt:00:00:00:00:00:00", "%d%c%d%c%d%c%d%c%d%c%d");
    if($y < 100) $y += (($y < 50)?2000:1900);
    return $s3 == ':'? sprintf("%04d-%02d-%02d",$y, $m, $d)
        : sprintf("%04d-%02d-%02d %02d:%02d:%02d", $y, $m, $d, $hh,$mm,$ss);
}
$dt_from = es2eu_dt($_REQUEST['dt_from']); 
$dt_to = es2eu_dt($_REQUEST['dt_to']);  


Даты будут восприниматься в формате 8.07.2007

Z787569541744

   
 
 автор: Teleman   (07.07.2007 в 23:52)   письмо автору
 
   для: Trianon   (07.07.2007 в 22:44)
 

Напиши кошелек webmoney. Немного помогу в финансовом вопросе насколько могу.

   
 
 автор: Trianon   (07.07.2007 в 22:44)   письмо автору
 
   для: Teleman   (07.07.2007 в 20:48)
 

1. нарушен порядок элементов в запросе
сперва выржение WHERE а потом уже GROUP BY и в конце ORDER BY

2. Вводите дату согласно формата yyyy-mm-dd

   
 
 автор: Teleman   (07.07.2007 в 20:48)   письмо автору
 
   для: Trianon   (07.07.2007 в 17:15)
 

Я наверное надоел, но вот что я сделал, и пишет мне ошибку
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE dateline BETWEEN UNIX_TIMESTAMP('2007-06-01') AND UNIX_TIMESTAMP('2007-06-'

$dt_from = mysql_escape_string($_REQUEST['dt_from']);
$dt_to = mysql_escape_string($_REQUEST['dt_to']); 

/* Таблица MySQL, в которой хранятся данные */ 
$userstable = "post";
 
/* создать соединение */ 
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
 
/* выбрать базу данных. Если произойдет ошибка - вывести ее */ 
mysql_select_db($dbName) or die(mysql_error());  

/* составить запрос, который выберет всех клиентов */ 
$query = "SELECT postid, username ,dateline ,
COUNT(*) AS kol FROM post as userfield GROUP BY username WHERE dateline BETWEEN UNIX_TIMESTAMP('$dt_from') AND UNIX_TIMESTAMP('$dt_to')+24*60*60-1 ORDER BY kol DESC"; 

   
 
 автор: Trianon   (07.07.2007 в 17:15)   письмо автору
 
   для: Teleman   (07.07.2007 в 15:22)
 

вот если Вам действительно все равно - то пусть оно будет в таком формате:2007-07-21
тогда

$dt_from = mysql_escape_string($_REQUEST['dt_from']);
$dt_to = mysql_escape_string($_REQUEST['dt_to']);
$sql = "SELECT * 
  FROM post 
  WHERE dt BETWEEN 
             UNIX_TIMESTAMP('$dt_ftom') 
         AND UNIX_TIMESTAMP('$dt_to')+24*60*60-1"; 

   
 
 автор: Teleman   (07.07.2007 в 15:22)   письмо автору
 
   для: Trianon   (07.07.2007 в 14:52)
 

ну из формы да полюбому можно хоть так хоть как, допустим 21.07.2007 абсолютно всё равно.

   
 
 автор: Trianon   (07.07.2007 в 14:52)   письмо автору
 
   для: Teleman   (07.07.2007 в 14:46)
 

да не в базу - с ней всё ясно.
В скрипт как попадают. Из формы.
А из базы Вы их можете вытянуть как
SELECT FROM_UNIXTIME(поле) AS humandate FROM post

   
 
 автор: Teleman   (07.07.2007 в 14:46)   письмо автору
 
   для: Trianon   (07.07.2007 в 14:40)
 

Дык а кто знает как она туда попадает в базе пишутся 1182863164 ну и все разные а как же узнать как они туда попадают.

   
 
 автор: Trianon   (07.07.2007 в 14:40)   письмо автору
 
   для: Teleman   (07.07.2007 в 14:23)
 

Зависит от того, в каком виде даты от и до попадают в скрипт.
В общем случае - как-то так
"SELECT ...
....
WHERE dt BETWEEN $dt_ftom AND $dt_to"

   

Сообщения:  [1-10]   [11-17] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования