Seite 1 von 1

newbie: apility problem

Verfasst: 06.09.2006, 15:54
von vincent_vega
hallo! ich möchte mich mit dem apility library mit goggle adwords verbinden, aber es geht einfach nicht. ich verstehe nicht, was ich falsch mache.

ich habe die apility lib heruntergeladet, die authentication.ini editiert, und nacher möchte ich eine einfache verbindung machen:

*******
require_once ('../../apility/apility.php');

#$campaignObject = createCampaignObject(681-253-8194);
$campaignObject = createCampaignObject(6812538194);

print_r($campaignObject->getCampaignData());

*******
und ich bekomme

Fatal error: Call to a member function on a non-object in /home/yourposition.ch/www/adwords-controller/cake_php/apility/lib/Campaign_v4.php on line 645

bitte was kann ich machen?
wo könnte der fehler sein? danke!

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Re: newbie: apility problem

Verfasst: 06.09.2006, 17:13
von haha
vincent_vega hat geschrieben:$campaignObject = createCampaignObject(6812538194);

print_r($campaignObject->getCampaignData());
[…]
Fatal error: Call to a member function on a non-object in /home/yourposition.ch/www/adwords-controller/cake_php/apility/lib/Campaign_v4.php on line 645

bitte was kann ich machen?
Ganz einfach: Ordentlich programmieren. Dazu gehört die Fehlerprüfung und die Fehlerausgabe, beides hast Du sträflicherweise unterlassen und stehst jetzt entsprechend im Regen.

Weitere Informationen findest Du im Abschnitt Error Managment der APIlity-Anleitung.

Verfasst: 07.09.2006, 13:28
von vincent_vega
hallo haha!

danke für die antwort. dein link funktioniert leider nicht. ich weiss wirklich nicht, was ich falsch mache.

kannst du bitte mich eine einfache verbindung schreiben?

danke schön!!

Verfasst: 07.09.2006, 16:20
von haha
vincent_vega hat geschrieben:dein link funktioniert leider nicht.
Nanu? Hier geht er, probiere es später nochmal. Eigentlich müsstest Du aber auch irgendwo selbst die APIlity-Anleitung haben, normalweise wird sowas der Bibliothek beigelegt.

Damit Du erstmal weiterkommst:

01 $campaignObject = createCampaignObject(6812538194);
02 print_r($campaignObject->getCampaignData());

Du gehst in Zeile 2 ohne Kontrolle einfach davon aus, dass createCampaignObject() funktioniert hat. Vermutlich schlägt die Funktion aber fehl und gibt statt eines Objekts false zurück, was Du dann mangels eigener Fehlerprüfung mit der PHP-Meldung quittiert bekommst, Du würdest versuchen, etwas, was kein Objekt ist ("non-object", false ist ein Bool'scher Wert, kein Objekt) als Objekt zu benutzen ("call to a member function").

Ob das nun tatsächlich das Problem ist, weiß ich nicht, aber - vorausgesetzt Du hast die richtige Codestelle zitiert - es ist naheliegend. Der eigentliche Fehler ist davon auch noch überhaupt nicht berührt, hier geht es erstmal darum, überhaupt eine brauchbare Fehlermeldung zu bekommen.

Ordentlich programmiert, also mit Fehlerprüfung, müsste das in etwa so aussehen:

01 if (! $campaignObject = createCampaignObject(6812538194)) {
02 $fault = array_pop($faultStack);
03 $fault->printFault();
04 }
05 else {
06 print_r($campaignObject->getCampaignData());
07 }

Falls es so ist, wie ich vermute, wirst Du aus Zeile 3 eine genauere Meldung über die Fehlerursache bekommen und musst Dich von da aus weiterhangeln.

NB: Ich kenne APIlity nicht, das Beispiel basiert auf der genannten Anleitung von Google.