pragmaMx Support Forum

pragmaMx => Coder und Bastlerecke => Thema gestartet von: lausbub in 17 Januar 2008, 14:48:01

Titel: [Erledigt] Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: lausbub in 17 Januar 2008, 14:48:01
hallo

wollt mal fragen ob und wie es funktioniert,

das ich ein script im root liegen haben kann und trotzdem auf die datenbank bzw über die API funktionen verfügen kann als wäre es ein Module?

wie stelle ich das am besten an?

Gruß

thorsten
Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: Andi in 17 Januar 2008, 14:57:45
Moin :)

Mit "root" meinst du den Ordner wo pragmaMx liegt?

Wenn ja, einfach die mainfile.php includen...
Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: lausbub in 17 Januar 2008, 15:14:19
jo super Danke dir für die super schnelle Antwort
besten Dank  :thumbup:


gruß
thorsten
Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: lausbub in 17 Januar 2008, 17:56:58
hmmmm

wenn ich eine test.php ins root lege ´klappt alles super

include("mainfile.php");
$userdaten = mxGetUserData();
extract($userdaten);
echo $uname;


wenn ich aber jetzt so wie ich es auch prauche
ein verszeichnis test erstelle und eine index.php reinlege

include("../mainfile.php");
$userdaten = mxGetUserData();
extract($userdaten);
echo $uname;


kommt bei mir nur diese meldung
Error: the theme-folder is missing!

ich möchte lediglich die ausgabe ohne die theme, klappt ja oben auch!  :gruebel:

was mach ich den falsch
Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: m-t in 17 Januar 2008, 20:03:30
so hab ichs...

test.php mit inhalt:

Zitat<?php
include('mainfile.php');
$index=1;
$pagetitle = "- xxxxx";
include('header.php');
OpenTable();
include('includes/meinscript.inc');
CloseTable();
include('footer.php');
?>

in includes/meinscript.inc ist das eigentliche script.
Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: lausbub in 17 Januar 2008, 20:07:05
ja solange ich eine test.php direkt im root liegen hab kann ich es auch includen.
ich versuche aber die mainfile.php in eine index.php die im ordner root/test liegt zu includen.

funkt einfach nicht

Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: m-t in 17 Januar 2008, 20:08:31
Zitat von: neuling321 in 17 Januar 2008, 20:07:05
eine index.php die im ordner root/test liegt zu includen.

sorry, das hab ich überlesen :-)
Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: lausbub in 17 Januar 2008, 20:13:05
da bin ich wohl zu dooooof dazu
bring es einfach nicht zum laufen.
:puzzled:
Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: lausbub in 18 Januar 2008, 21:57:18
Ich bekomme das nicht hin.

ich denke mal das es dann aus irgendwelchen sicherheitsgründen das pragma verhindert oder blockiert.

hab natürlich nichts dagegen, wenn jemand doch die richtige lösung hat  :puzzled:

:crash:
Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: Andi in 20 Januar 2008, 14:22:06
Moin :)

die mainfile kann/darf nur eingebunden werden, wenn der pragmaMx-root Ordner (also da wo die mainfile liegt) der aktuelle Ordner ist. Mit einem kleinen Trick ist das aber trotzdem möglich:

<?php

// aktuelles Verzeichnis zwischenspeichern
$curdir getcwd();

// in das pragmaMx-root Verzeichnis wechseln
chdir('../');

// mainfile includen
include('./mainfile.php');

// zurück zum Ausgangsverzeichnis
chdir($curdir);


?>


Damit hast du zumindest die passende Datenbankverbindung in deinem Script verfügbar. Die Session für die Zugriffsrechte etc. wird aber nicht übernommen. Da müsstest du entweder mit einem Cookie nachhelfen, oder dem Script irgendwelche Parameter übergeben....
Titel: Re: Script im Root liegen und trotzdem auf die Datenbank zugreifen
Beitrag von: lausbub in 20 Januar 2008, 15:29:46
:geil:


Danke Andi

du bist der beste finde ich klasse

juhu


besten Dank

gruß
thorsten