calendario php jquery/conexion mysql Hola amigos, soy nuevo en el foro y estoy en busca de ayuda.
Estoy realizando un calendario con eventos que se visualizan por dia, semana y mes ademas de esto cuando intento hacer la conexion tengo problemas puesto que no se muestran los eventos en el calendario de mi BD, no se como seguir; estaba revisando en algunos temas del foro y veo que tambien tienen el mismo problema pero sin solucion, espero puedan ayudarme.
GRACIAS Código PHP:
dbconfig.php <?php class DBConnection{ function getConnection(){ mysql_connect("localhost","root","") or die("Could not connect: " . mysql_error()); mysql_select_db("wdcalendario") or die("Could not select database: " . mysql_error()); } } ?> Código PHP:
edit.db.php <?php include_once("php/dbconfig.php"); include_once("php/functions.php"); function getCalendarByRange($id){ try{ $db = new DBConnection(); $db->getConnection(); $sql = "select * from `jqcalendar` where `id` = " . $id; $handle = mysql_query($sql); //echo $sql; $row = mysql_fetch_object($handle); }catch(Exception $e){ } return $row; } if($_GET["id"]){ $event = getCalendarByRange($_GET["id"]); } ?> Código PHP:
datafeed.db.php <?php include_once("dbconfig.php"); include_once("functions.php"); function addCalendar($st, $et, $sub, $ade){ $ret = array(); try{ $db = new DBConnection(); $db->getConnection(); $sql = "insert into `jqcalendar` (`subject`, `starttime`, `endtime`, `isalldayevent`) values ('" .mysql_real_escape_string($sub)."', '" .php2MySqlTime(js2PhpTime($st))."', '" .php2MySqlTime(js2PhpTime($et))."', '" .mysql_real_escape_string($ade)."' )"; //echo($sql); if(mysql_query($sql)==false){ $ret['IsSuccess'] = false; $ret['Msg'] = mysql_error(); }else{ $ret['IsSuccess'] = true; $ret['Msg'] = 'add success'; $ret['Data'] = mysql_insert_id(); } }catch(Exception $e){ $ret['IsSuccess'] = false; $ret['Msg'] = $e->getMessage(); } return $ret; } function addDetailedCalendar($st, $et, $sub, $ade, $dscr, $loc, $color, $tz){ $ret = array(); try{ $db = new DBConnection(); $db->getConnection(); $sql = "insert into `jqcalendar` (`subject`, `starttime`, `endtime`, `isalldayevent`, `description`, `location`, `color`) values ('" .mysql_real_escape_string($sub)."', '" .php2MySqlTime(js2PhpTime($st))."', '" .php2MySqlTime(js2PhpTime($et))."', '" .mysql_real_escape_string($ade)."', '" .mysql_real_escape_string($dscr)."', '" .mysql_real_escape_string($loc)."', '" .mysql_real_escape_string($color)."' )"; //echo($sql); if(mysql_query($sql)==false){ $ret['IsSuccess'] = false; $ret['Msg'] = mysql_error(); }else{ $ret['IsSuccess'] = true; $ret['Msg'] = 'add success'; $ret['Data'] = mysql_insert_id(); } }catch(Exception $e){ $ret['IsSuccess'] = false; $ret['Msg'] = $e->getMessage(); } return $ret; } function listCalendarByRange($sd, $ed){ $ret = array(); $ret['events'] = array(); $ret["issort"] =true; $ret["start"] = php2JsTime($sd); $ret["end"] = php2JsTime($ed); $ret['error'] = null; try{ $db = new DBConnection(); $db->getConnection(); $sql = "select * from `jqcalendar` where `starttime` between '" .php2MySqlTime($sd)."' and '". php2MySqlTime($ed)."'"; $handle = mysql_query($sql); //echo $sql; while ($row = mysql_fetch_object($handle)) { //$ret['events'][] = $row; //$attends = $row->AttendeeNames; //if($row->OtherAttendee){ // $attends .= $row->OtherAttendee; //} //echo $row->StartTime; $ret['events'][] = array( $row->Id, $row->Subject, php2JsTime(mySql2PhpTime($row->StartTime)), php2JsTime(mySql2PhpTime($row->EndTime)), $row->IsAllDayEvent, 0, //más de un día del evento //$row->InstanceType, 0,//Evento recurrente, $row->Color, 1,//editable $row->Location, ''//$attends ); } }catch(Exception $e){ $ret['error'] = $e->getMessage(); } return $ret; } function listCalendar($day, $type){ $phpTime = js2PhpTime($day); //echo $phpTime . "+" . $type; switch($type){ case "month": $st = mktime(0, 0, 0, date("m", $phpTime), 1, date("Y", $phpTime)); $et = mktime(0, 0, -1, date("m", $phpTime)+1, 1, date("Y", $phpTime)); break; case "week": //Supongo que el primer día de la semana es el lunes $monday = date("d", $phpTime) - date('N', $phpTime) + 1; //echo date('N', $phpTime); $st = mktime(0,0,0,date("m", $phpTime), $monday, date("Y", $phpTime)); $et = mktime(0,0,-1,date("m", $phpTime), $monday+7, date("Y", $phpTime)); break; case "day": $st = mktime(0, 0, 0, date("m", $phpTime), date("d", $phpTime), date("Y", $phpTime)); $et = mktime(0, 0, -1, date("m", $phpTime), date("d", $phpTime)+1, date("Y", $phpTime)); break; } //echo $st . "--" . $et; return listCalendarByRange($st, $et); } function updateCalendar($id, $st, $et){ $ret = array(); try{ $db = new DBConnection(); $db->getConnection(); $sql = "update `jqcalendar` set" . " `starttime`='" . php2MySqlTime(js2PhpTime($st)) . "', " . " `endtime`='" . php2MySqlTime(js2PhpTime($et)) . "' " . "where `id`=" . $id; //echo $sql; if(mysql_query($sql)==false){ $ret['IsSuccess'] = false; $ret['Msg'] = mysql_error(); }else{ $ret['IsSuccess'] = true; $ret['Msg'] = 'Succefully'; } }catch(Exception $e){ $ret['IsSuccess'] = false; $ret['Msg'] = $e->getMessage(); } return $ret; } function updateDetailedCalendar($id, $st, $et, $sub, $ade, $dscr, $loc, $color, $tz){ $ret = array(); try{ $db = new DBConnection(); $db->getConnection(); $sql = "update `jqcalendar` set" . " `starttime`='" . php2MySqlTime(js2PhpTime($st)) . "', " . " `endtime`='" . php2MySqlTime(js2PhpTime($et)) . "', " . " `subject`='" . mysql_real_escape_string($sub) . "', " . " `isalldayevent`='" . mysql_real_escape_string($ade) . "', " . " `description`='" . mysql_real_escape_string($dscr) . "', " . " `location`='" . mysql_real_escape_string($loc) . "', " . " `color`='" . mysql_real_escape_string($color) . "' " . "where `id`=" . $id; //echo $sql; if(mysql_query($sql)==false){ $ret['IsSuccess'] = false; $ret['Msg'] = mysql_error(); }else{ $ret['IsSuccess'] = true; $ret['Msg'] = 'Succefully'; } }catch(Exception $e){ $ret['IsSuccess'] = false; $ret['Msg'] = $e->getMessage(); } return $ret; } function removeCalendar($id){ $ret = array(); try{ $db = new DBConnection(); $db->getConnection(); $sql = "delete from `jqcalendar` where `id`=" . $id; if(mysql_query($sql)==false){ $ret['IsSuccess'] = false; $ret['Msg'] = mysql_error(); }else{ $ret['IsSuccess'] = true; $ret['Msg'] = 'Succefully'; } }catch(Exception $e){ $ret['IsSuccess'] = false; $ret['Msg'] = $e->getMessage(); } return $ret; } header('Content-type:text/javascript;charset=UTF-8'); $method = $_GET["method"]; switch ($method) { case "add": $ret = addCalendar($_POST["CalendarStartTime"], $_POST["CalendarEndTime"], $_POST["CalendarTitle"], $_POST["IsAllDayEvent"]); break; case "list": $ret = listCalendar($_POST["showdate"], $_POST["viewtype"]); break; case "update": $ret = updateCalendar($_POST["calendarId"], $_POST["CalendarStartTime"], $_POST["CalendarEndTime"]); break; case "remove": $ret = removeCalendar( $_POST["calendarId"]); break; case "adddetails": $st = $_POST["stpartdate"] . " " . $_POST["stparttime"]; $et = $_POST["etpartdate"] . " " . $_POST["etparttime"]; if(isset($_GET["id"])){ $ret = updateDetailedCalendar($_GET["id"], $st, $et, $_POST["Subject"], isset($_POST["IsAllDayEvent"])?1:0, $_POST["Description"], $_POST["Location"], $_POST["colorvalue"], $_POST["timezone"]); }else{ $ret = addDetailedCalendar($st, $et, $_POST["Subject"], isset($_POST["IsAllDayEvent"])?1:0, $_POST["Description"], $_POST["Location"], $_POST["colorvalue"], $_POST["timezone"]); } break; } echo json_encode($ret); ?> |