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

Форум PHP

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

 

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

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

тема: Вывод времени сеансов

Сообщения:  [1-10]    [11-20]  [21-23] 

 
 автор: kis-kis   (30.01.2008 в 17:55)   письмо автору
 
   для: not detected   (30.01.2008 в 14:34)
 

-

   
 
 автор: not detected   (30.01.2008 в 14:34)   письмо автору
 
   для: kis-kis   (30.01.2008 в 14:26)
 

Пожалуйста. Рад был помочь:)

   
 
 автор: kis-kis   (30.01.2008 в 14:26)   письмо автору
 
   для: not detected   (30.01.2008 в 14:08)
 

Отлично работает. Спасибо. )))

   
 
 автор: not detected   (30.01.2008 в 14:08)   письмо автору
 
   для: kis-kis   (30.01.2008 в 11:35)
 

Угу, не учел этого.
Если я правильно понял, то вы делали по первому примеру. Тогда после строки
 echo $seans['hall'].'-'.$stime.'<br>'; 
добавьте строку
$stime='';

Или убрать $stime=''; в начале скрипта и поместить эту строку в самое начало цикла, с помощью которого вы выводите результаты выборки

while($seans = mysql_fetch_array($result_seans)){
$stime='';
И т.д.

   
 
 автор: kis-kis   (30.01.2008 в 11:35)   письмо автору
 
   для: not detected   (30.01.2008 в 06:41)
 

Так работает, но не совсем правильно.
$stime постоянно увеличивается на предыдущий сеанс, т.е.

1 сеанс был - 16.55 19.05 21.20 23.30
2 сеанс был - 10.10, 12.30, 14.40, 16.50, 19.00, 21.15, 23.25

а после использования нашего способа 2 сеанс стал - 16.55 19.05 21.20 23.30 10.10 12.30 14.40 16.50 19.00 21.15 23.25.

Видите к нему добавилось время первого сеанса и т.д. к 3 сеансу уже добавляется время 1 сеанса и время 2 сеанса, ...

Можно ли это исправить? Спасибо.

   
 
 автор: not detected   (30.01.2008 в 06:41)   письмо автору
 
   для: not detected   (30.01.2008 в 06:05)
 

Опечатолся немного:
вместо
if(trim($val =='')) continue;
надо
if(trim($val) =='') continue;

   
 
 автор: not detected   (30.01.2008 в 06:05)   письмо автору
 
   для: kis-kis   (29.01.2008 в 20:30)
 

<?php
$query_seans 
"SELECT * FROM afisha_seance WHERE anons_id = '$anons[id]' and date_f >= '$today' and date_s <= '$today' order by date_f";
$result_seans mysql_query($query_seans) or die('<B>Error '.mysql_errno().' :</B> '.mysql_error());
if(
mysql_num_rows($result_seans) > 0){
$now_time=date('H.i');
$end_day='6.00';
$stime='';
while(
$seans mysql_fetch_array($result_seans)){
$val explode(','$seans['stime']);
for(
$i=0$i<sizeof($val); $i++){
if(
trim($val =='')) continue;
if((
$now_time $end_day and $now_time $val[$i] and $val[$i] > $end_day) or ($now_time $end_day and ($now_time $val[$i] or $val[$i] > $end_day)))
$stime .= ' <span class="enddata">'.$val[$i].'</span>';
else 
$stime .= ' <span class="data">'.$val[$i].'</span>';
}
echo 
$seans['hall'].'-'.$stime.'<br>';
}
}else echo
'сеансов нет<br/>';
?>

Или так можно

<?php
$query_seans 
"SELECT * FROM afisha_seance WHERE anons_id = '$anons[id]' and date_f >= '$today' and date_s <= '$today' order by date_f";
$result_seans mysql_query($query_seans) or die('<B>Error '.mysql_errno().' :</B> '.mysql_error());
if(
mysql_num_rows($result_seans) > 0){
$now_time=date('H.i');
$end_day='6.00';
while(
$seans mysql_fetch_array($result_seans)){
$val explode(','$seans['stime']);
echo 
$seans['hall'].'-';
for(
$i=0$i<sizeof($val); $i++){
if(
trim($val =='')) continue;
if((
$now_time $end_day and $now_time $val[$i] and $val[$i] > $end_day) or ($now_time $end_day and ($now_time $val[$i] or $val[$i] > $end_day)))
echo
' <span class="enddata">' .$val[$i].'</span>';
else echo
' <span class="data">'.$val[$i].'</span>';
}
echo
'<br>';
}
}else echo
'сеансов нет<br/>';
?> 

//Прошу прощения за дубли постов. Нажимал вроде "править сообщение", а оно запостилось как новое.

   
 
 автор: not detected   (30.01.2008 в 06:05)   письмо автору
 
   для: kis-kis   (29.01.2008 в 20:30)
 

дубль

   
 
 автор: not detected   (30.01.2008 в 05:58)   письмо автору
 
   для: kis-kis   (29.01.2008 в 20:30)
 

дубль

   
 
 автор: kis-kis   (29.01.2008 в 20:30)   письмо автору
 
   для: not detected   (29.01.2008 в 20:05)
 

Условие работает.
Со строкой не понял. Собирать нужно обязательно, т.к. помимо времени выводится еще информация.


while($seans = mysql_fetch_array($result_seans)) 


// Текущее время
$now_time = date("H.i");

// Конец текущего дня
$end_day = "06.00";  

$seans_list=explode(', ',$seans['stime']);   

foreach ($seans_list as $val)    
{   
if(($now_time > $end_day and $now_time > $val and $val > $end_day) or ($now_time < $end_day and ($now_time > $val or $val > $end_day)))
$stime = " <span class=\"enddata\">".$val."</span>";
else $stime = " <span class=\"data\">".$val."</span>";

// echo "".$stime."<br>";
}

echo "".$seans['hall']."- ".$stime."<br>";

}

   

Сообщения:  [1-10]    [11-20]  [21-23] 

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

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