Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Mysql и PDO

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

oldVsevolod



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
есть скрипт календаря
почему-то mysql_query работает, а $db->query
поключение к базе через PDO есть, все обращения вне этого места обрабатывает, а вот именно в этом месте PDO и не срабатывает, прямо заколдованное.
 

Код:
 
<?php
 
include "db_calendar.php";
 
/* Функция генерации календаря */
function draw_calendar($month,$year){
  /* Начало таблицы */
  $calendar = '<table cellpadding="0" cellspacing="0" class="calendar">';
  /* Заглавия в таблице */
  $headings = array('Понедельник','Вторник','Среда','Четверг','Пятница','Суббота','Воскресенье');
  $calendar.= '<tr class="calendar-row"><td class="calendar-day-head">'.implode('</td><td class="calendar-day-head">',$headings).'</td></tr>';
  /* необходимые переменные дней и недель... */
  $running_day = date('w',mktime(0,0,0,$month,1,$year));
//  $running_day = $running_day - 1;
 
if($running_day == 0) $running_day = 6;
else $running_day = $running_day - 1;
 
  $days_in_month = date('t',mktime(0,0,0,$month,1,$year));
  $days_in_this_week = 1;
  $day_counter = 0;
  $dates_array = array();
  /* первая строка календаря */
  $calendar.= '<tr class="calendar-row">';
  /* вывод пустых ячеек в сетке календаря */
  for($x = 0; $x < $running_day; $x++)
  {
    $calendar.= '<td class="calendar-day-np"> </td>';
    $days_in_this_week++;
  }
  /* дошли до чисел, будем их писать в первую строку */
  for($list_day = 1; $list_day <= $days_in_month; $list_day++)
  {
    $calendar.= '<td class="calendar-day"';
if (date(j)==$list_day) $calendar.=' bgcolor=#ddddff>'; else $calendar.='>';
      /* Пишем номер в ячейку */
      $calendar.= '<div class="day-number">'.$list_day.'</div>';
      /** ЗДЕСЬ МОЖНО СДЕЛАТЬ MySQL ЗАПРОС К БАЗЕ ДАННЫХ! ЕСЛИ НАЙДЕНО СОВПАДЕНИЕ ДАТЫ СОБЫТИЯ С ТЕКУЩЕЙ - ВЫВОДИМ! **/
 
$running_date = $year.'-'.$month.'-'.$list_day;
$query = mysql_query("SELECT * FROM events WHERE date = '$running_date' ");
while($result = mysql_fetch_assoc($query))
 
 
/*    $query = $db->query("SELECT * FROM events WHERE date = '$running_date' ");
    while($result = $query->fetch())*/
        {
            
            $calendar.= '<p class="'.$result[event_name].' ('.$result[kto].')" id="test" name="test" onclick=alert(this.className)><font size=3 color=blue>'.$result['zagolovok'].'</font></br></p>';
        }
 
 
 
      $calendar.= str_repeat('<p> </p>',2);
       
    $calendar.= '</td>';
    if($running_day == 6)
    {
      $calendar.= '</tr>';
      if(($day_counter+1) != $days_in_month)
      {
        $calendar.= '<tr class="calendar-row">';
      }
      $running_day = -1;
      $days_in_this_week = 0;
    }
    $days_in_this_week++; $running_day++; $day_counter++;
  }
  /* Выводим пустые ячейки в конце последней недели */
  if($days_in_this_week < 8)
  {
    for($x = 1; $x <= (8 - $days_in_this_week); $x++)
    {
      $calendar.= '<td class="calendar-day-np"> </td>';
    }
  }
  /* Закрываем последнюю строку */
  $calendar.= '</tr>';
  /* Закрываем таблицу */
  $calendar.= '</table>';
   
  /* Все сделано, возвращаем результат */
  return $calendar;
 
}
/* СПОСОБ ПРИМЕНЕНИЯ */
 
// Месяц
 
if (!$y) $y=date("Y");
if (!$mes)  
    { $mes=date("m"); $mes_=date("m");}  
    
else  
    {
    if ($mes=="1") { $mes="01"; $mes_="01";}
    if ($mes=="2") { $mes="02"; $mes_="02";}
    if ($mes=="3") { $mes="03"; $mes_="03";}
    if ($mes=="4") { $mes="04"; $mes_="04";}
    if ($mes=="5") { $mes="05"; $mes_="05";}
    if ($mes=="6") { $mes="06"; $mes_="06";}
    if ($mes=="7") { $mes="07"; $mes_="07";}
    if ($mes=="8") { $mes="08"; $mes_="08";}
    if ($mes=="9") { $mes="09"; $mes_="09";}
    if ($mes>9) $mes_=$mes;
    }
 
 
if ($mes=="01") $mes="Январь";
if ($mes=="02") $mes="Февраль";
if ($mes=="03") $mes="Март";
if ($mes=="04") $mes="Апрель";
if ($mes=="05") $mes="Май";
if ($mes=="06") $mes="Июнь";
if ($mes=="07") $mes="Июль";
if ($mes=="08") $mes="Август";
if ($mes=="09") $mes="Сентябрь";
if ($mes=="10") $mes="Октябрь";
if ($mes=="11") $mes="Ноябрь";
if ($mes=="12") $mes="Декабрь";
//echo $mes;
 
 
$mes1_=$mes_-1;
if ($mes1_==0) {$mes1_="12"; $y_1=$y-1;} else $y_1=$y;
if ($mes1_=="01") $mes1="Январь";
if ($mes1_=="02") $mes1="Февраль";
if ($mes1_=="03") $mes1="Март";
if ($mes1_=="04") $mes1="Апрель";
if ($mes1_=="05") $mes1="Май";
if ($mes1_=="06") $mes1="Июнь";
if ($mes1_=="07") $mes1="Июль";
if ($mes1_=="08") $mes1="Август";
if ($mes1_=="09") $mes1="Сентябрь";
if ($mes1_=="10") $mes1="Октябрь";
if ($mes1_=="11") $mes1="Ноябрь";
if ($mes1_=="12") $mes1="Декабрь";
 
$mes2_=$mes_+1;
if ($mes2_==13) {$mes2_="1"; $y_2=$y+1;} else $y_2=$y;
if ($mes2_=="1") $mes2="Январь";
if ($mes2_=="2") $mes2="Февраль";
if ($mes2_=="3") $mes2="Март";
if ($mes2_=="4") $mes2="Апрель";
if ($mes2_=="5") $mes2="Май";
if ($mes2_=="6") $mes2="Июнь";
if ($mes2_=="7") $mes2="Июль";
if ($mes2_=="8") $mes2="Август";
if ($mes2_=="9") $mes2="Сентябрь";
if ($mes2_=="10") $mes2="Октябрь";
if ($mes2_=="11") $mes2="Ноябрь";
if ($mes2_=="12") $mes2="Декабрь";
 
 
// день недели
 
$nedel=jddayofweek ( cal_to_jd(CAL_GREGORIAN, date("m"),date("d"), date("Y")) , 0 );
if ($nedel==1) $nedel_b="пон";
if ($nedel==2) $nedel_b="вт";
if ($nedel==3) $nedel_b="ср";
if ($nedel==4) $nedel_b="чт";
if ($nedel==5) $nedel_b="пят";
if ($nedel==6) $nedel_b="суб";
if ($nedel==0) $nedel_b="вос";
//echo $nedel_b;
 
echo '<a href=/?mes='.$mes1_.'&y='.$y_1.'>'.$mes1.'</a> ';
echo '<font size=5><b>'.$mes.' '.$y.'</b></font>';
echo ' <a href=/?mes='.$mes2_.'&y='.$y_2.'>'.$mes2.'</a> ';
if (!$mes) echo draw_calendar(date("m"),$y);
echo draw_calendar($mes_,$y);
 
 
 
//<a href=javascript:window.alert("< ?php echo $nedel_b; ? >") id="test" name="test" ><font size=3 color=blue>вот</font></br></a>
?>
 

Всего записей: 264 | Зарегистр. 10-11-2015 | Отправлено: 10:40 18-03-2016
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
а вот именно в этом месте PDO и не срабатывает, прямо заколдованное.

что значит "не срабатывает"? ничего не возвращается или выдает ошибку запроса?  
запрос покажите и содержимое базы.
и забывайте про mysql расширение - его скоро не будет, используйте mysqli

Всего записей: 15100 | Зарегистр. 20-09-2014 | Отправлено: 01:34 29-04-2016
nuker96

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
http://php.net/manual/ru/pdostatement.debugdumpparams.php

Всего записей: 27 | Зарегистр. 22-08-2011 | Отправлено: 19:28 29-04-2016
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » Mysql и PDO


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru