Event erstellen

Phips_CH

Mitglied
Wieso funktioniert bei mir folgender Code nicht?
ich erhalte eine Fehlermeldung, Seite kann nicht angezeigt werden.

PHP:
/* API permissions
     */
    $client->scope = 'https://www.googleapis.com/auth/calendar '.
		'https://www.googleapis.com/auth/userinfo.profile';
	

    if(($success = $client->Initialize()))
    {
        if(($success = $client->Process()))
        {
            if(strlen($client->authorization_error))
            {
                $client->error = $client->authorization_error;
                $success = false;
            }
            elseif(strlen($client->access_token))
            {


                $success = $client->CallAPI(
'https://www.googleapis.com/calendar/v3/calendars/mail_an_mich@gmail.com/events', /* Hab sonst meine Mailadr. drin stehen */
'GET', array(), array('FailOnAccessError'=>true), $user);
	
$event = new Event();
$event->setSummary('Appointment');
$event->setLocation('Somewhere');

$start = new EventDateTime();
$start->setDateTime('2012-11-18T10:00:00');
$event->setStart($start);

$end = new EventDateTime();
$end->setDateTime('2012-12-18T10:30:00');
$event->setEnd($end);

$attendee1 = new EventAttendee();
$attendee1->setEmail('attendeeEmail');

$attendees = array($attendee1,
                   
                   );
$event->attendees = 
$attendees;
$createdEvent = $service->events->insert('primary', $event);

echo $createdEvent->getId();

            }
        }
        $success = $client->Finalize($success);
	}
	
    if($client->exit)
        exit;
    if($success)

    {
		

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Google OAuth client results</title>
</head>
<body>
<?php



		echo '<h1>', HtmlSpecialChars($user->name),
			' Gratulation du hast es geschaft!</h1>';
		echo '<pre>', HtmlSpecialChars(print_r($user, 1)), '</pre>';
		
?>
</body>
</html>
<?php
	}
	else
	{
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>OAuth client error</title>
</head>
<body>
<h1>OAuth client error</h1>
<pre>Error: <?php echo HtmlSpecialChars($client->error); ?></pre>
</body>
</html>
<?php
	}

?>


Ich möchte in meinen Google-Kalender einen Event eintragen.
Die Verbindung zum Google-Konto hab ich.

Gruss
Phips_CH
 
Code:
$attendees = array($attendee1,
                   
                   );
ist das soo gedacht? Das wird wohl zu einem php-Syntax Error führen, Apache wirft ein Error 500 raus und kann/wird dann die Seite nicht anzeigen.

Entweder
Code:
$attendees = array($attendee1);
oder
Code:
$attendees = array($attendee1,[dafehltwas]);

mfg chmee
 
Genau ich erhalte den Fehler 500.

Habe
PHP:
$attendees = array($attendee1);

versucht. geht nicht.

was fehlt denn bei der zweite Variante?
 
..ich beschreibe einen syntaktischen Fehler. Wenn 500 auch nach der Änderung (variante1) erscheint, ist da ein weiterer syntaktischer Fehler drin, üblich sind fehlende Semikolon/Anführungszeichen oder vergessene abschließende geschweifte Klammern.

Was da hinkommt, weiß ich nicht. Das aber wäre wiederum ein logischer Fehler, der (wenn die Errormessages angeschaltet wären) in irgend einer Form angezeigt würde.
PHP:
error_reporting(-1);
an den Anfang des php-scripts setzen.

Nachtrag:
PHP:
echo '<h1>', HtmlSpecialChars($user->name),' Gratulation du hast es geschaft!</h1>';
echo '<pre>', HtmlSpecialChars(print_r($user, 1)), '</pre>';
Das geht auch nicht, SyntaxError.
(A) strings werden mit . nicht , verbunden
(B) php ist casesensitive. Es wird zwischen Groß- und Kleinschreibung unterschieden
PHP:
$a = HtmlSpecialChars(print_r($user, 1));
// sind zwei Fehler (CaseS und dazu noch ein unnötiges print_r
$a = htmlspecialchars($user, 1);
// ist fast richtig, wofür steht diese 1?
http://php.net/manual/de/function.htmlspecialchars.php

mfg chmee

(mike.. von wegen syntax..)
 
Aber wenn ich folgenden PHP-Code ausklammere hab ich keinen Fehler:

PHP:
$event = new Event();
$event->setSummary('Appointment');
$event->setLocation('Somewhere');

$start = new EventDateTime();
$start->setDateTime('2012-11-18T10:00:00');
$event->setStart($start);

$end = new EventDateTime();
$end->setDateTime('2012-11-18T10:30:00');
$event->setEnd($end);

$attendee1 = new EventAttendee();
$attendee1->setEmail('attendeeEmail');

$attendees = array($attendee1);
$event->attendees = $attendees;
$createdEvent = $service->events->insert('primary', $event);

echo $createdEvent->getId();

aber da finde ich keinen Fehler.
Auch
PHP:
error_reporting(-1);
am Anfang des Scripts hat keine Änderung gezeigt.
 
oO Das ist ja Pfui.. Ich habs grad auch mal getestet. Wieso wird so ein Blödsinn denn abgefangen bzw als fehlerlos durchgewunken.. Oh mann, sogar beim Coden wird Schluderigkeit geduldet.. Das gabs früher nicht :D

Sag nicht, sogar das mit den Kommata ist inzwischen auch erlaubt..
Ich trau mich gar nicht, es auszuprobieren..
 
Nachtrag:
PHP:
echo '<h1>', HtmlSpecialChars($user->name),' Gratulation du hast es geschaft!</h1>';
echo '<pre>', HtmlSpecialChars(print_r($user, 1)), '</pre>';
Das geht auch nicht, SyntaxError.
(A) strings werden mit . nicht , verbunden

Als kleine Information dazu:
Strings werden, wie du richtig bemerkt hast, mit dem .-Operator verbunden, hier wird aber das echo Sprachkonstrukt verwendet:
Code:
echo string_1, string_2, string_3, ..., string_n;
Dabei kann string_1 natürlich ein "großer" String sein, der über den .-Operator verbunden wurde, oder man spart sich das verbinden und übergibt die einzelnen Strings an echo.
 
Zurück