|
|
|
|
|
для: not detected
(30.01.2008 в 14:34)
| | - | |
|
|
|
|
|
|
|
для: kis-kis
(30.01.2008 в 14:26)
| | Пожалуйста. Рад был помочь:) | |
|
|
|
|
|
|
|
для: not detected
(30.01.2008 в 14:08)
| | Отлично работает. Спасибо. ))) | |
|
|
|
|
|
|
|
для: kis-kis
(30.01.2008 в 11:35)
| | Угу, не учел этого.
Если я правильно понял, то вы делали по первому примеру. Тогда после строки
echo $seans['hall'].'-'.$stime.'<br>';
| добавьте строку
Или убрать $stime=''; в начале скрипта и поместить эту строку в самое начало цикла, с помощью которого вы выводите результаты выборки
while($seans = mysql_fetch_array($result_seans)){
$stime='';
И т.д.
|
| |
|
|
|
|
|
|
|
для: 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:05)
| | Опечатолся немного:
вместо
if(trim($val =='')) continue;
надо
if(trim($val) =='') continue; | |
|
|
|
|
|
|
|
для: 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/>';
?>
|
//Прошу прощения за дубли постов. Нажимал вроде "править сообщение", а оно запостилось как новое. | |
|
|
|
|
|
|
|
для: 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>";
}
|
| |
|
|
|
|