Size verebileceğim bir formum var: Bir ay, bir yıl ve her gün için (1-31) bir kod seçiyorum.Form altından sonra büyük php kodu
Gönderimden sonra, kod bir tarih oluşturacak ve tarihi Google Takvim’imde doğru saatlerle girmek için bir işlev çağıracak.
....
//Smaller version without checkups
$Day1=$_POST['Day1'];
$Day2=$_POST['Day2'];
$Day3=$_POST['Day3'];
$Year=$_POST['Year'];
$Month=$_POST['Month'];
if($Day1 !="")
{
$Date=$Year.'-'.$Month.'-'02';
book($Date,$Day2);
}
if($Day2 !="")
{
$Date=$Year.'-'.$Month.'-'02';
book($Date,$Day2);
}
if($Day3 !="")
{
$Date=$Year.'-'.$Month.'-'03';
book($Date,$Day3);
}
....
Önceki işlem bittikten sonra işlevi nasıl yürütebilirim? 8 tarihte verebiliyorum ve her şey yerine getiriliyor. Bundan sonra, Google Takvim’ime girdiğim ve rezervasyon yaptığımın onayını aldım.
8 günden daha uzun bir süre girersem, her şey Google Takvimime de gönderilir, ancak sonuçta onay yerine beyaz bir ekran alırım. (Ama her şey olması gerektiği gibi çalışır).
<?php
//Smaller version of my function
function book($Date, $Day)
{
$query = msqli_query($link, "SELECT * FROM Table WHERE id='$Day'") or die(mysqli_error($link));
$row = mysqli_fetch_assoc($query);
if ($row) {
//Start time and end time in format 00:00:00
$fStart = $row['Start'];
$fEnd = $row['Eind'];
$Title = "";
$locat = "";
$desc = "";
//Converts to Google Calendar Datetime (like 2016-05-01T08:00:00.000+02:00)
$start_event = $Date . 'T' . $fStart . '.000+02:00';
$end_event = $Date . 'T' . $fEnd . '.000+02:00';
$event = new Google_Event();
$event->setSummary($Title);
$event->setDescription($desc);
$event->setLocation($locat);
$start = new Google_EventDateTime();
$start->setDate($start_event);
$event->start = $start;
$end = new Google_EventDateTime();
$end->setDate($end_event);
$event->end = $end;
$createdEvent = $service->events->insert($calendar, $event);
if ($createdEvent) {
echo= 'Success';
} else {
echo= 'Error';
}
} else {
echo 'Not found!';
}
}
Bilinen kötü kodun yapıştırılması, insanların zamanını boşa harcamanın harika bir yoludur. Sunucu kayıtlarınızı okuyun, probleminiz orada gösterilecektir. – Synchro
Zaman kaybetmek niyetim değildi. Yukarıdaki kod sadece anlamını göstermek içindi. Gerçek kod değil. Yukarıdaki kodda hata yaptım (cepten soru sordum). –