PHP web sitesine jQuery fullcalendar Entegrasyonu

10 Cevap php

Benim PHP web sitesi haline jQuery fullcalendar entegre etmek istiyorum, ama ben olayı ve nasıl MySQL JSON verilerini kullanmak için nasıl işleneceğini bilmiyorum.

Herhangi bir tavsiye mutluluk duyacağız.

10 Cevap

Emin PHP çıktı f olabilir emin olun ollowing HTML code:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
                    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>

  <script>
  $(document).ready(function(){
    $('#example').calendar();
  });
  </script>

</head>
<body>
  <link rel="stylesheet" href="http://dev.jquery.com/view/trunk/themes/flora/flora.all.css" type="text/css" media="screen" title="Flora (Default)">
<script  src="http://dev.jquery.com/view/trunk/plugins/calendar/jquery-calendar.js"></script>
<input type="text" id="example" value="Click inside me to see a calendar" style="width:300px;"/>
</body>
</html>

İşte a sample bunu nasıl yapabilirim, json_encode kullanarak:

$(document).ready(function() { 

      $('#calendar').fullCalendar({ 
         draggable: true, 
         events: "json_events.php", 
         eventDrop: function(event, delta) { 
            alert(event.title + ' was moved ' + delta + ' days\n' + 
               '(should probably update your database)'); 
         }, 
         loading: function(bool) { 
            if (bool) $('#loading').show(); 
            else $('#loading').hide(); 
         } 
      }); 

   });

Ve burada PHP kodu:

<?php

   $year = date('Y'); 
   $month = date('m');

   echo json_encode(array( 

      array( 
         'id' => 1, 
         'title' => "Event1", 
         'start' => "$year-$month-10", 
         'url' => "http://yahoo.com/" 
      ), 

      array( 
         'id' => 2, 
         'title' => "Event2", 
         'start' => "$year-$month-20", 
         'end' => "$year-$month-22", 
         'url' => "http://yahoo.com/" 
      ) 

   ));

?>

I had the same problem and just found out how to make it work. Here is the code that you should use in your php file:

$query = "select * from events where accountNo = '$accountNo'";
$res = mysql_query($query) or die(mysql_error());
$events = array();
while ($row = mysql_fetch_assoc($res)) {
    $start = "2010-01-08T08:30"";//Here you have to format data from DB like this.
    $end = "2010-01-08T08:30";//This format works fine
    $title = $row['firstName']." ".$row['lastName'];
    $eventsArray['id'] =  $row['id'];
    $eventsArray['title'] = $title;
    $eventsArray['start'] = $start;
    $eventsArray['end'] = $end;
    $eventsArray['allDay'] = "";
    $events[] = $eventsArray;
}


echo json_encode($events);

Ben :) yardımcı olur umarım.

PHP - JSON:

$eventsArray['allDay'] = "false"; //doesn't work

$eventsArray['allDay'] = false; //did the trick to have a NON FULL DAY correctly rendered!!

bir olayı yankı çıktı bu formatta olmalıdır:

$('#calendar').fullCalendar({
  events: [{
    title: 'Awesome Event Title', 
    start: new Date($start_year, $start_month, $start_day),     or   end: new Date(y, m, d),
    end: new Date($end_year, $end_month, $end_day)    or   end: new Date(y, m, d)
  }]
});

bu şekilde uygulamak ve iyi çalışıyor

$result = mysql_query("SELECT * FROM eventoform",$conexion);
        $array = array();
        $i = 0;
        while ($row = mysql_fetch_array($result)) {
            $array[$i]=array("id"=>$row["id_evento"],"title"=>$row["NombreEvento"],"start"=>$row["FechaInicio"]." ".$row["HoraInicio"],"allDay"=>false,"description"=>$row["description"],"editable"=>true);
            $i++;
        }

 echo json_encode($array);

Jquery ile aşina değilim. Ama ben think sorun dikkate Ajax uyumsuz doğasını almayan olmasıdır.

Sürece fullCalendar () yaptığı şey çok garip fullCalendar zaman bir yanıt çalışan bitmiş olacak çünkü (bir Ajax istek ve yanıt bekler kapalı yangınlar), o zaman, bu şekilde işlevi bir dış kaynak kullanmak mümkün olmayacaktır sunucuya geri geliyor.

Orada Hafta Takvim web sayfasında yapmak için çalışıyoruz ne net bir örnek gibi görünen, ama ne gerek olaylar olmaksızın bir takvim oluşturmak için emin değilim, ama olayları eklemek için tanımlanmış bir geri arama ile değil; ve sonra bir şekilde harici aramayı kapalı yangın.

Bu örnek çalışır:

$sql= "SELECT id, title, start, DATE_FORMAT(start, '%Y-%m-%dT%H:%i' ) AS startDate
FROM kalender
ORDER BY startDate DESC";
$res = mysql_db_query($db, $sql, $conn) or die(mysql_error());

$events = array();
//important ! $start = "2010-05-10T08:30";  iso8601 format !!
while ($row = mysql_fetch_assoc($res)) {
   $eventArray['id'] = $row['id'];
   $eventArray['title'] =  $row['title'];
   $eventArray['start'] = $row['startDate'];
   $events[] = $eventArray;
}
echo json_encode($events);

Ben yaşıyorum olarak sizin aynı sorunu yaşıyor düşünüyorum. Ben fullCalendar javascript onu doğru yorumlamak böylece kurulum nasıl DateTime bulmaya çalışıyorlar web'de arama ettik. (Bu sayfa olan bazı iyi ipuçları vardı: http://blog.stevenlevithan.com/archives/date-time-format).

Ben yaratıcısı veya bir başkasının konuda biraz ışık tutacağını umuyor fullCalendar konular sayfasında yayınlanmıştır.

==================== SAYI AÇIKLAMA ====================

Ne adımlar sorunu yeniden olacak?

  1. JSON kullanarak olayları getir
  2. Bu JSON dizesini kullanabilirsiniz:

 

[{"id":2, "title":"title of 2","start":"2009-11-17T10:00:00" ,"end":"2009-11-17T11:01:00","url":"?eventID=2"}]

Beklenen çıktısı nedir? Onun yerine ne görüyorsunuz?

  • I expect that the event will show up in the calendar with start time 10:00 and end time 11:01.
  • Bütün bir gün olay olarak göstermek.

Eğer ürünün hangi sürümünü kullanıyorsunuz? Hangi işletim sistemi mi?

  • FullCalendar V1.4.1
  • Windows XP

Aşağıda herhangi bir ek bilgi veriniz.

I am using an aspx page for fetching the calendar events. My guess is that there is something wrong with the format of the JavaScript DateTime object that I'm returning in the JSON and that this is causing the fullcalendar to interpret the events as fullDayEvents. The format that I'm sending in the JSON is: 2009-11-17T11:01:00.

json yem üretmek jbuilder rayları kullanan birileri var sadece durumda ... sen add the allDay attribute var ...

json.array!(@resubmissions) do |object|
  json.id object.id
  json.title "WVL - #{object.to_s}"
  json.start object.resubmission_at.to_i
  json.allDay false
end

Ancak, PHP çözüm için teşekkürler!

Ben tam takvimine ilişkin büyük bir bağlantı bulmak

sadece bu hattı kontrol

http://developer-paradize.blogspot.in/2013/06/jquery-fullcalendar-integration-with.html