Eigenes Modul mit Session Variablen

Gesperrt
Freetime-Progger
Beiträge: 4
Registriert: Di 4. Jan 2011, 18:59
Kontaktdaten:

Eigenes Modul mit Session Variablen

Beitrag von Freetime-Progger »

Hallo zsuammen,
ich hab gestern bis spät in die Nacht veruscht, eine Session Varriable zu registrieren.

Hierzu funktioniert alles solange ich den Artikel nicht wechsle, sobald aber ein anderer Artikel aufgerufen wird kann ich die zuvor in der Session gespeicherte Variable nicht mehr aufrufen.

Zur Info:
Ich verweiße aus einem Modul per Include auf eine im CMS Verzeichnis vorhandene php-Datei.
(Ort: cms/plugins/mein-ego/includes)

Da ich mir auch schon selbsthelfen wollte versuchte ich bereits üebr die Klasse $sess->url(() eine Sessionid zu produzieren welche zum neune Artikel übergeben wird. Geht leider nicht :(

Code: Alles auswählen

Call to a member function url() on a non-object
Welche "einfache" Methode gibt es die von mir gewünschten Variablen in der Session so abzuspeichern, das diese auch aus anderen Artikeln heraus aufrufbar sind?

Danke vorab

mfg
Marcus
idea-tec
Beiträge: 1242
Registriert: Do 19. Sep 2002, 14:41
Wohnort: Dichtelbach
Kontaktdaten:

Re: Eigenes Modul mit Session Variablen

Beitrag von idea-tec »

MfG, Karsten
Nicht Können bedeutet nicht, dass man etwas nicht beherrscht, sondern lediglich, dass man sich nicht traut es zu tun ;-)
| Internet | Ihr Logo deutschlandweit auf T-Shirts |
Diplomatie: Jemanden so in die Hölle zu schicken, dass er sich auf die Reise freut!!! ;-)
Freetime-Progger
Beiträge: 4
Registriert: Di 4. Jan 2011, 18:59
Kontaktdaten:

Re: Eigenes Modul mit Session Variablen

Beitrag von Freetime-Progger »

Leider bekomm ich hier auch noch den Fehler:

Code: Alles auswählen

 Call to a member function is_registered() on a non-object 
Ic hkomm nicht dahinter was ... denke aber das die Contenido Klassen nicht aufgerufen werden können ... Idee ?
Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Re: Eigenes Modul mit Session Variablen

Beitrag von Dodger77 »

Erst mal willkommen im Contenido-Forum, Marcus!

Wäre es möglich, den Code deines Moduls bzw. des Includes hier mal eben zu posten? Die Fehlermeldung besagt, dass die Variable, zu der die Methode "is_registered" aufgerufen wird wahrscheinlich nicht eine Instanz der Klasse Session ist. Hast du denn sonst den Code, den idea-tec oben verlinkt hat, mal einfach direkt in einem Modul ausprobiert?


Gruß

Ingo
Freetime-Progger
Beiträge: 4
Registriert: Di 4. Jan 2011, 18:59
Kontaktdaten:

Re: Eigenes Modul mit Session Variablen

Beitrag von Freetime-Progger »

Hallo Ingo :)

also erstmal die theoretisch was ich vorhabe:

Ich möchte verschieden Module anlegen welche ich in die einzelnen Artikel einbinde (je nach Bedarf) ...
die Module wiederrum binden PHP-Code aus externen Dateien ein. (da diese leichter für mich über Dreamweaver zu pflegen sind.
Ich benötige eben teilweise die CMS Funktionen und teilweise Bau ich eigene externe Skrips mit ein.


Modul zum Klasse einbinden:

Code: Alles auswählen

global $content;
global $error;
    //Include der Klassen
    include("plugins/mein-ego/class/class.system.php");

Bsp. Klassen-Code (Externe Skript liegt im CMS Verzeichnis) hab ich auch schon unter Contenido/plugins/mein-plugin/ ausprobiert:

Code: Alles auswählen


class sys extends PHPMailer{
....
...
   // Inhalt aus Datei einbinden
    function content($datei){
        $me_cfg = sys::config();
        include($me_cfg["includes_path"].$datei.'.php');
        echo $content;  
    }
...
...

Bsp. Modulcode:

Code: Alles auswählen

<?php
    $sys -> content('anmeldung');
?>
Code in externer PHP Datei: (enthält keine Functionen oder Klassen)

Code: Alles auswählen

...
...
$content .=	'	<div class="content">'.chr(10);
$content .=	'	<form name="anmeldung" action="'.$sess->url($me_cfg["cms_url"].'?idcat=55&idart=45&show_step=1').'" method="POST"><input type="hidden" name="secure_code" value="'.$_SESSION["secure_code"].'">'.chr(10);
$content .= $me_cfg->show_error();
$content .= '		<table cellpadding="0" cellspacing="0" border="0" width="100%">'.chr(10);
...
..
Ich hab den Code schon direkt ausprobiert, dann kommt der genannte Fehler ... hab den verrdacht das die Klasse(n) von Contenido verloren gehen sobald ich in meine externen Skripts was anstelle ? Kann das sein ? wenn ja wie krieg ich gebacken ?

Danke vorab!

Gruß
Marcus
Freetime-Progger
Beiträge: 4
Registriert: Di 4. Jan 2011, 18:59
Kontaktdaten:

Re: Eigenes Modul mit Session Variablen

Beitrag von Freetime-Progger »

gibt wohl keine Antworten ?

Dann werd ich wohl Contenido für das Projekt sterben lassen und stricke es mir selbst....
munkh.balidar_4fb
Beiträge: 10
Registriert: Mo 27. Jul 2009, 21:49
Kontaktdaten:

Re: Eigenes Modul mit Session Variablen

Beitrag von munkh.balidar_4fb »

Hallo,

Wie ich verstehe, du inkludierst ja eine externe PHP-Datei in einer Klassen-Methode. Dann hast du ja an der Stelle keine Globale-Variablen von Contenido. Nicht nur $sess sondern alle anderen wie $idart, $idcat, $client usw. werden hier in der externen Datei fehlen.

Dafür musst du die Variablen im Amfang der externen PHP-Datei deklarieren. z.B global $sess.
So musste es funktionieren.

Bye.
Gesperrt