esman schriebkann mir jemand helfen ??
Poste einfach mal dein Skript...
esman schriebkann mir jemand helfen ??
Poste einfach mal dein Skript...
sorry,
hatte diesen post total vergessen, obwohl das noch akut ist.
Also das Script:
require_once(PATH_t3lib . 'class.t3lib_page.php');
require_once(PATH_tslib . 'class.tslib_pibase.php');
class ajax_order extends tslib_pibase {
function main(){
tslib_eidtools::connectDB(); //Connect to database
$feUserObj = tslib_eidtools::initFeUser(); // Initialize FE user object
$GLOBALS[TSFE]->fe_user = $feUserObj;
$this->cObj = t3lib_div :: makeInstance("tslib_cObj");
echo $this->pi_getPageLink(100);
}
}
$output = t3lib_div::makeInstance('ajax_order');
echo $output->main();
ich hoffe das hilft weiter..
Also ich hatte das gleiche Problem (bin deshalb auf das Thema gestoßen). Ich konnte es aber (selbst! *stolz*) lösen:
Das sind die Klassen die ich initialisiert habe:
require_once(PATH_tslib.'class.tslib_content.php');
require_once(PATH_t3lib.'class.t3lib_page.php');
require_once(PATH_tslib.'class.tslib_pibase.php');
Und dann in der Klasse:
$this->feUserObj = tslib_eidtools::initFeUser();
$this->cObj = t3lib_div::makeInstance('tslib_cObj');
$GLOBALS['TSFE']->sys_page = t3lib_div::makeInstance('t3lib_pageSelect');
$GLOBALS['TSFE']->tmpl = t3lib_div::makeInstance('t3lib_TStemplate');
Die letzten beiden Zeilen sind wichtig um die typolink-Funktion benutzen zu können.
Danke für die Antwort.
Ich bekomme leider nur Teilweise den gewünschten link.
Folgendes:
require_once(PATH_t3lib . 'class.t3lib_page.php');
require_once(PATH_tslib . 'class.tslib_content.php');
require_once(PATH_tslib . 'class.tslib_pibase.php');
$this->feUserObj = tslib_eidtools::initFeUser();
$this->cObj = t3lib_div::makeInstance('tslib_cObj');
$GLOBALS['TSFE']->sys_page = t3lib_div::makeInstance('t3lib_pageSelect');
$GLOBALS['TSFE']->tmpl = t3lib_div::makeInstance('t3lib_TStemplate');
echo $this->pi_getPageLink(127);
--> www.meine-domain.de/?id=127&no-cache=1
Da ich realurl verwende hat mich das erstmal verwundert.
wenn ich folgendes dazu nehme...
require_once(PATH_t3lib . 'class.t3lib_stdgraphic.php');
require_once(PATH_tslib . 'class.tslib_gifbuilder.php');
require_once(PATH_t3lib .'class.t3lib_befunc.php');
...bekomme ich auch schönere namen
--> www.meine-domain.de/de/shopping.html
jetzt habe ich das Problem das ich in diesem letzten link eine mischvariante erzeugt bekomme. Da steht "de" für deutsch, aber der titel ist englisch, obwohl es eine deutsche Version gibt.
Zum verzweifeln das ganze...
wozu das ganze? eID ist mehr für einfache Ajax-Scripts. Wenn man pibase, cObj etc. braucht, sollte man seinen Request über type machen, dan hat man auch alles korrekt initialisiert.
eID hat doch mit Ajax gar nichts zu tun!
Tetramatrix schriebeID hat doch mit Ajax gar nichts zu tun!
aber es wird in aller regel für das verwendet und ist auch dafür gedacht
Ach Quark, es ist genauso wie mit tt_news. Eigentlich überflüssig. Wird aber verkauft wie geschnitten Brot.
Ich muss beispielsweise nur etwas Content nachladen, der aber auch Links enthält. eID bietet sich da doch an, oder nicht?
So wie ichs gepostet hab, funktionierts für meine Zwecke, allerdings habe ich bisherher auch noch kein realurl eingebaut.
Edit:
steffenk schriebWenn man pibase, cObj etc. braucht, sollte man seinen Request über type machen, dan hat man auch alles korrekt initialisiert.
Nochmal drüber nachgedacht.. hast du dafür einen Link? Ich habe mich noch nicht so intensiv mit den types auseinandergesetzt, ich weiß nur, dass wohl abhängig vom type die Page unterschiedlich gerendert werden kann, beispielsweise für Druckansichten etc.
ganz einfach:
myPage = PAGE
myPage {
typeNum = 977
10 < plugin.tx_myext_pi1
config {
disableAllHeaderCode = 1
additionalHeaders = Content-type:application/xml
xhtml_cleaning = 0
admPanel = 0
}
}
im Plugin fragst Du das einfach ab:
$type = $GLOBALS['TSFE']->type;
Frage: Hat jemand im Zusammenhang mit eID und TypoLink schon mal folgende Fehlermeldung gesehen ? Typo3 4.2.6
Fatal error: Call to a member function getPage_noCheck() on a non-object in
[...Path...]/typo3/sysext/cms/tslib/class.tslib_content.php on line 5200
nixda schriebFrage: Hat jemand im Zusammenhang mit eID und TypoLink schon mal folgende Fehlermeldung gesehen ? Typo3 4.2.6
Fatal error: Call to a member function getPage_noCheck() on a non-object in [...Path...]/typo3/sysext/cms/tslib/class.tslib_content.php on line 5200
Ich suche für CoolURL einen code. Hier mal ein all-inclusive code für RealUrl:
<?php
require_once(PATH_tslib.'class.tslib_pibase.php');
class tx_myext_eID extends tslib_pibase{
function init(){
require_once(PATH_tslib.'class.tslib_content.php');
require_once(PATH_t3lib.'class.t3lib_page.php');
require_once(t3lib_extMgm::extPath('realurl').'class.tx_realurl.php');
tslib_eidtools::connectDB();
$this->realurl = t3lib_div::makeInstance('tx_realurl');
$GLOBALS['TSFE']->sys_page = t3lib_div::makeInstance('t3lib_pageSelect');
$GLOBALS['TSFE']->tmpl = t3lib_div::makeInstance('t3lib_TStemplate');
$GLOBALS['TSFE']->config['config']['tx_realurl_enable'] = 1;
$this->cObj = t3lib_div::makeInstance('tslib_cObj');
}
function main(){
$this->init();
// .. add you functionality here
// .. for links use $this->geturl($pid, $params) where $params are $key => $value pairs
}
function geturl($pid, $params){
$res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*', 'pages', 'uid = '.(int)$pid);
$pagerow = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res);
$conf['LD'] = $GLOBALS['TSFE']->tmpl->linkData($pagerow, '', 0, 'index.php', '', t3lib_div::implodeArrayForUrl('',$params);
$this->realurl->encodeSpURL($conf, $this);
$url = $conf['LD']['totalURL'];
return $url;
}
}
$eID = t3lib_div::makeIntance('tx_myext_eID');
$content = $eID->main();
echo $content;
?>