cInclude macht mich wahnsinnig
cInclude macht mich wahnsinnig
hi @ all,
ich versuche über cInclude eine datei *.php einzu binden. diese hat ein paar variablen $var1 $var2. jetzt will ich nach dem include darauf zu greifen von einem anderen script welches die datei cincluded hat .... und das funktioniert einfach nicht!!!!
kann mir mal bitte jemanden helfen oder wenigstens in die richtige richtung weisen !!!!
wo liegt der unterscheid zw include von php und cInclude? und wofür seteht das c für Contenido oder class ???
mfg
und besten dank im voraus !!!
ich versuche über cInclude eine datei *.php einzu binden. diese hat ein paar variablen $var1 $var2. jetzt will ich nach dem include darauf zu greifen von einem anderen script welches die datei cincluded hat .... und das funktioniert einfach nicht!!!!
kann mir mal bitte jemanden helfen oder wenigstens in die richtige richtung weisen !!!!
wo liegt der unterscheid zw include von php und cInclude? und wofür seteht das c für Contenido oder class ???
mfg
und besten dank im voraus !!!
Auch wenn ich deiner Problembeschreibung nicht völlig folgen kann: Warum nimmst du nicht einfach include statt cInclude?
cInclude ist einfach eine Hilfsfunktion von Contenido: ist nichts weiter als ein Inkludieren der tolleklasse.class.php-Datei im classes-Verzeichnis der Contenido-Installation. Für die genaue Benutzung schau dir am besten die Funktion im Code an - oder schau nach, wie sie in Contenido benutzt wird.
cInclude ist einfach eine Hilfsfunktion von Contenido:
Code: Alles auswählen
cInclude("classes", "tolleklasse.class.php");
"Es wird keine Handlung geben, keine Geschichte mit ihrer Versprechung auf einen Anfang und ihrer Hoffnung auf ein Ende." (Andrzej Stasiuk)
das dachte ich auch....
jetzt habe ich eine datei test.php
und einen andere:
habe ich irgendwie total den falschen ansatz dem mit include ging das doch immer so !!!!
warum ich cInclude nehme ist eine gute frage: wahrscheinlich weil ich damit besser die verzeichnisse angeben kann... weiss ich nicht gaenau.... aber jetzt gehts um die ehre .... ist ja nicht so das es ein wahnsinnig komplexes problem ist !!!!
mfg
projumper
jetzt habe ich eine datei test.php
Code: Alles auswählen
<?php
$variable="test";
?>
Code: Alles auswählen
<?php
cInclude("class", "test.php");
echo $variable; //wird noicht ausgegeben
?>
warum ich cInclude nehme ist eine gute frage: wahrscheinlich weil ich damit besser die verzeichnisse angeben kann... weiss ich nicht gaenau.... aber jetzt gehts um die ehre .... ist ja nicht so das es ein wahnsinnig komplexes problem ist !!!!
mfg
projumper
Zuletzt geändert von projumper am Mi 26. Nov 2008, 12:32, insgesamt 2-mal geändert.
das ist ja das problem der server liefert keine fehlermeldung!!!
das script wird fehler frei übersetzt ohne syntax fehler, ....
ich habe sogar
angemacht!!!
das problem ist das ich nicht auf die variablen zugreifen kann die mit cInclud includiert worden sind
wie oben beschrieben:
dann ist die Ausgabe : -----><------
wobei $variable="test1" ist (siehe oben 2 post)
@Dodger77: ja natürlich. habe die [ " " ] nur hier vergessen !!!!
mfg
projumper
das script wird fehler frei übersetzt ohne syntax fehler, ....
ich habe sogar
Code: Alles auswählen
echo error_reportin(E_ALL)
das problem ist das ich nicht auf die variablen zugreifen kann die mit cInclud includiert worden sind
wie oben beschrieben:
Code: Alles auswählen
echo "----->".$variable."<------";
dann ist die Ausgabe : -----><------
wobei $variable="test1" ist (siehe oben 2 post)
@Dodger77: ja natürlich. habe die [ " " ] nur hier vergessen !!!!
mfg
projumper
Wenn es hier um die Ehre geht schalte ich mich mal dazu!!!!
mal ne ganz doofe frage:
Wo liegt die Datei?
Und "class" funktioniert schon mal gar nicht!!!
Wenn dann "classes"
Das erste Attribut zeigt auf ein bestimmtes Verzeichnis, Wenn die Datei nicht in dem Verzeichnis ist wird es nicht gehen
Daten für Attribut #1:
WERT | BASE-DIR
"frontend" <- $cfgClient[$client]["path"]["frontend"]
"wysiwyg" <- $cfg['path']['wysiwyg']
"all_wysiwyg" <- $cfg['path']['all_wysiwyg']
"conlib" & "phplib" <- $cfg['path']['phplib']
Default:
$cfg['path']['contenido'].$cfg['path'][ Attribut #1 ]. Attribut #2
Alles zu $cfg['path'] in contenido/includes/config.path.php
mfg OliverL
mal ne ganz doofe frage:
Wo liegt die Datei?
Und "class" funktioniert schon mal gar nicht!!!
Wenn dann "classes"
Das erste Attribut zeigt auf ein bestimmtes Verzeichnis, Wenn die Datei nicht in dem Verzeichnis ist wird es nicht gehen
Daten für Attribut #1:
WERT | BASE-DIR
"frontend" <- $cfgClient[$client]["path"]["frontend"]
"wysiwyg" <- $cfg['path']['wysiwyg']
"all_wysiwyg" <- $cfg['path']['all_wysiwyg']
"conlib" & "phplib" <- $cfg['path']['phplib']
Default:
$cfg['path']['contenido'].$cfg['path'][ Attribut #1 ]. Attribut #2
Alles zu $cfg['path'] in contenido/includes/config.path.php
mfg OliverL
Hallo,
ich denke das liegt evtl. an den Geltungsbereichen der Variablen.
Der normale Include wird ja meistens außerhalb einer Funktion verwendet.
Dadurch sind Variablendeklarationen dort auch global.
Beim Verwenden von der function 'cinclude' wird der include ja innerhalb einer Funktion benutzt. Also sind normal definierte variablen nicht global sondern locale Variablen der functionsinstanz.
Versuche doch einmal die Variablen in der Datei mit global bzw. $GLOBALS zu definieren.
z.B.
oder
Gruss
Boeckers
ich denke das liegt evtl. an den Geltungsbereichen der Variablen.
Der normale Include wird ja meistens außerhalb einer Funktion verwendet.
Dadurch sind Variablendeklarationen dort auch global.
Beim Verwenden von der function 'cinclude' wird der include ja innerhalb einer Funktion benutzt. Also sind normal definierte variablen nicht global sondern locale Variablen der functionsinstanz.
Versuche doch einmal die Variablen in der Datei mit global bzw. $GLOBALS zu definieren.
z.B.
Code: Alles auswählen
global $name;
$name = 'test';
Code: Alles auswählen
$GLOBALS['name'] = 'test';
Boeckers
hallo @ all,
sorry wegen der verzögerung.. war noch mit einem anderen problem beschäftigt..... jetzt aber wieder dieses
@boeckers: ist aber include von php nicht auch eine ganz normale funktion? ich werde aber trotzdem deine variante testen... melde mich spätestens morgen !!!
@olivel die datei liegt unter includes. das was ich hier gepostet habe war ein fektives beispiel.
mfg
projumper
sorry wegen der verzögerung.. war noch mit einem anderen problem beschäftigt..... jetzt aber wieder dieses
@boeckers: ist aber include von php nicht auch eine ganz normale funktion? ich werde aber trotzdem deine variante testen... melde mich spätestens morgen !!!
@olivel die datei liegt unter includes. das was ich hier gepostet habe war ein fektives beispiel.
mfg
projumper
Hallo Projumper,
der normale include ist eine interne Function von php. Sie ist in den Dateien von der PHP-Api fest einkompiliert.
cInclude ist eine selber definierte Funktion und wird ja bei dem Aufruf der Datei interpretiert.
Dadurch ist das Verhalten von internen Funktionen und selbst definierten Funktionen unterschiedlich.
Gruss
boeckers
der normale include ist eine interne Function von php. Sie ist in den Dateien von der PHP-Api fest einkompiliert.
cInclude ist eine selber definierte Funktion und wird ja bei dem Aufruf der Datei interpretiert.
Dadurch ist das Verhalten von internen Funktionen und selbst definierten Funktionen unterschiedlich.
Gruss
boeckers
Also wenn die Datei unter dem Include-Dir des Madaten ist ist der aufruf:
Bei Contenido so:
Man sollte es auch testen können in dem man in test.php einfach mal das rein macht:
echo "Haaaaallllllllooooooo! Ich bin da!";
Wenn das ausgegeben wird kann man sich gedanken mit den Globals machen
mfg OliverL
Code: Alles auswählen
<?php
// Entspricht: http://www.domain.tld/cms/includes/test.php
cInclude("frontend", "includes/test.php");
?>
Code: Alles auswählen
<?php
// Entspricht: http://www.domain.tld/contenido/includes/test.php
cInclude("includes", "test.php");
?>
echo "Haaaaallllllllooooooo! Ich bin da!";
Wenn das ausgegeben wird kann man sich gedanken mit den Globals machen
mfg OliverL
Re: cInclude macht mich wahnsinnig
Hallo alle zusammen,
der Thread ist zwar schon älter, es fehlt aber noch eine Antwort. Hatte das gleiche Problem (echo funktioniert, Variablenwerte werden aber nicht bereitgestellt). Globale Variablen (siehe Beitrag von boeckers) funktionieren dann aber...
Grüße
Michael
der Thread ist zwar schon älter, es fehlt aber noch eine Antwort. Hatte das gleiche Problem (echo funktioniert, Variablenwerte werden aber nicht bereitgestellt). Globale Variablen (siehe Beitrag von boeckers) funktionieren dann aber...
Grüße
Michael