<?php
$glade = new GladeXML(dirname(__FILE__) . '/projekt1.glade');
$tbox = $glade->get_Widget("entry1"); //weiß nicht ob das richtig ist.
$glade->signal_autoconnect();
function on_button1_clicked() {
$datei = file("http://www.google.de");
$tbox-set_text($datei); //hier kommt der Fehler.
}
Gtk::main();
?>
kenne mich mit dieser PHP Variante nicht aus, aber muss es nicht heißen "$tbox->set_text()" statt "$tbox-set_text()"?
Außerdem gibt file() in PHP ein Array zurück. set_text() erwartet aber einen string. Dazu könntest du readfile() benutzen.
Grüße,
brb
P.S. Wozu braucht man eigentlich diese PHP Variante? Ich fand das schon immer etwas... seltsam?
Call to a member function set_text() on a non-object
Ist doch selbsterklärend? $tbox ist None - entweder enthält dein Gladefile keine Objekt namens "entry1" oder etwas anderes stimmt mit deiner Glade-Routine nicht.
Laut PHP GTK Dokumentation heißt die gesuchte Glade-Methode "get_widget" und nicht "get_Widget".
Bitte achte etwas auf derartige Rechtschreibfehler, das ist wirklich etwas, für das man die Community nicht unbedingt bemühen muss
Nyrk hat geschrieben:Meinst du wozu man PHP-GTK braucht?
Eigentlich aus dem gleichen Grund wie PyGTK
Naja, aber für PHP musst du einen entsprechenden Server rennen haben, was die Weitergabe verkompliziert. Und für klassische PHP Einsatzzwecke taugt es eh nichts, da man auf Remote-Server in der Regel keinen visuellen Zugriff hat?
also wenn PHP-GTK die gesetze von PHP nicht ausser kraft setzt is doch klar warum $tbox ein non object ist... es ist im scope der function ja nicht definiert...
Nyrk hat geschrieben:Meinst du wozu man PHP-GTK braucht?
Eigentlich aus dem gleichen Grund wie PyGTK
Naja, aber für PHP musst du einen entsprechenden Server rennen haben, was die Weitergabe verkompliziert. Und für klassische PHP Einsatzzwecke taugt es eh nichts, da man auf Remote-Server in der Regel keinen visuellen Zugriff hat?
//edit:
Was gibt denn "print $glade;" aus?
Nein, man muss keinen Server laufen lassen, es reicht php-client zu installieren...eigentlich genau wie python, nur nicht ganz so mächtig.
Also auf jedem Unix System nutzbar.
@TDO: Danke, das war der knackpunkt...Wieso hab ich da nicht selber dran gedacht!
Nyrk hat geschrieben:Meinst du wozu man PHP-GTK braucht?
Eigentlich aus dem gleichen Grund wie PyGTK
Nee, PHP ist eine bessere Templatesprache die für sowas eigentlich nicht konzipiert ist. Ich sehe PHP-GTK eher als Proof-Of-Concept, man kann es benutzt weil es geht, aber man will es nicht.