---
title: "simple PHP-Funktion funktioniert nicht"
url: "https://www.typo3.net/d/19541-simple-php-funktion-funktioniert-nicht"
source: "typo3.net"
tags: ["Allgemein","Frage","PHP"]
created: "2004-12-30"
last_reply: "2005-01-15"
replies: 4
solved: false
page: 1
pages: 1
lang: "de"
---

# simple PHP-Funktion funktioniert nicht

Allgemein · 4 Antworten · gestartet 2004-12-30

## Eröffnungsbeitrag

**spawnferkel** · 2004-12-30 · [Beitrag #1](https://www.typo3.net/d/19541-simple-php-funktion-funktioniert-nicht/1)

Hallo,
ich habe das Tutorial "Moderne Template Erstellung Teil1" durchgearbeitet, jetzt wollte ich auf eine PHP-Funktion zurück greifen und es funktioniert einfach nicht. Es wird nicht mal eine Fehlermeldung ausgespuckt, nichts! Und dabei hat es schonmal funktioniert? Sehr seltsam. Hier zum Vergleich einmal der Code aus dem Tut.:

```typoscript
# Default PAGE object:
page = PAGE
page.typeNum = 0
page.includeLibs.some_random_id_string = fileadmin/userfunctions.php
page.config.admPanel = 1
# Content object outputting current page title:
page.10 = HTML
page.10.value = The page ID, {field:uid}, multiplied with 15 is:
page.10.value.insertData = 1
page.10.value.wrap = <b> |</b> <br />
page.20 = USER
page.20.userFunc = user_functions->multiplyTest
page.20.factor = 15
```

Und jetzt nochmal der Code aus der PHP-Datei:
[edit]Die PHP-Datei ist natürlich die userfunction.php in fileadmin[/edit]

```php
<?php

class user_functions {
	/**
	* Multiplies the current page ID with $conf["factor"]
	*/
	function multiplyTest($content,$conf) {
		$currentPageUid = $GLOBALS['TSFE']->id;
		$factor = intval($conf['factor']);
		return $currentPageUid * $factor;
	}	
}

?>
```

Weiß jemand Rat? Hattet ihr vielleicht auch schon mal so ein Problem?

Für Hilfe wäre ich sehr dankbar.
Gruß Alexander

## Antworten

### [#2](https://www.typo3.net/d/19541-simple-php-funktion-funktioniert-nicht/2) · dubAUT · 2005-01-03

Hallo!

Die Variable heißt meines Wissens nach $_GLOBALS und nicht $GLOBALS...

#Hannes#

### [#3](https://www.typo3.net/d/19541-simple-php-funktion-funktioniert-nicht/3) · spawnferkel · 2005-01-10

Hmm, das funktioniert leider nicht, hätte mich auch gewundert, wo dieses Script genau in der Form doch schon beim durcharbeiten des Tutorials funktioniert hat.

Das einzige was jetzt den Unterschied zu früher ausmacht, sind einige Module, die ich jetzt in einem Sysfolder namens "Template Storage" ausgelagert habe. Aber das kann doch nicht der Grund allen übels sein??!

Folgende Struktur zeigt der Template Analyser:

|--EXT:css_styled_content/static/
|--ts_language_de
|--Menu 1
|--Auto-Parser
|--cObject
|
main

Im Main findet man dann folgendes:

```typoscript
# Default PAGE object:
page = PAGE
page.typeNum = 0
page.includeLibs.some_random_id_string = fileadmin/userfunctions.php
page.config.admPanel = 1
# Content object outputting current page title:
page.10 = HTML
page.10.value = The page ID, {field:uid}, multiplied with 15 is:
page.10.value.insertData = 1
page.10.value.wrap = <b> |</b> <br />
page.20 = USER
page.20.userFunc = user_functions->multiplyTest
page.20.factor = 15
```

Und wie schon in meinem vorherigen Beitrag erwähnt in der datei fileadmin/userfunction.php steht folgendes:

```php
<?php

class user_functions {
	/**
	* Multiplies the current page ID with $conf["factor"]
	*/
	function multiplyTest($content,$conf) {
		$currentPageUid = $GLOBALS['TSFE']->id;
		$factor = intval($conf['factor']);
		return $currentPageUid * $factor;
	}	
}
?>
```

Weiß noch jemand Rat? ich bin schier am verzweifeln
Aber danke schonmal für die Lösungsversuche

Gruß
Alexander

### [#4](https://www.typo3.net/d/19541-simple-php-funktion-funktioniert-nicht/4) · JcJensen · 2005-01-14

Hiho,

ich tippe:

```typoscript
page.20.factor = 15
```

muss zu

```typoscript
page.20.userFunc.factor = 15
```

mit der php function debug() kann man immer ganz gut gucken was da so ankommt in den funktionen.

z.b.:

```php
<?php 

class user_functions { 
   /** 
   * Multiplies the current page ID with $conf["factor"] 
   */ 
   function multiplyTest($content,$conf) { 

// ich bin eine debugging function :o) 
debug($conf);



      $currentPageUid = $GLOBALS['TSFE']->id; 
      $factor = intval($conf['factor']); 
      return $currentPageUid * $factor; 
   }    
} 
?>
```

das geht aber nur wenn das debug "angeschaltet" ist. das kann man in der installation machen, da ist ein feld, in dem die IP's eingetragen werden, fuer die das debug zulaessig ist. das einfach mal alles rausnehmen.

grtz

### [#5](https://www.typo3.net/d/19541-simple-php-funktion-funktioniert-nicht/5) · robert.​meyer · 2005-01-15

Hallo,

die Klasse kann bei kleinen "Progrämmchen" hier ruhig weg bleiben, ebenfalls wäre die Anwendung des Objektes USER_INT statt USER gerade zu Entwicklungszwecken angebrachter. Wenn die Klasse weg bleibt und es sich nicht um ein Modul handeln soll, reicht das Objekt PHP_SCRIPT_INT aus:

```typoscript
page.20 = PHP_SCRIPT_INT
page.20.file = fileadmin/multiplyTest.php
page.20.factor = 15
```

Folgenden PHP-Code in der Datei fileadmin/multiplyTest.php ablegen:

```php
<?php 
   /** 
   * Multiplies the current page ID with $conf["factor"] 
   */ 
   function multiplyTest($content,$conf) { 
      $currentPageUid = $GLOBALS['TSFE']->id; 
      $factor = intval($conf['factor']); 
      return $currentPageUid * $factor; 
   }    
 
?>
```

Ansonsten: wenn es sich um ein Modul handeln soll, am Besten mit dem Kickstarter anfangen, der eine "fertige" PHP-Klasse für TYPO3 erzeugt. Im oberen Abschnitt Ihrer Klasse fehlen einige benötigte Angaben.

---

Quelle: „simple PHP-Funktion funktioniert nicht“, typo3.net, https://www.typo3.net/d/19541-simple-php-funktion-funktioniert-nicht
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
