---
title: "PHP Skript macht einen Header Fehler"
url: "https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler"
source: "typo3.net"
tags: ["TYPO3","TypoScript","Frage"]
created: "2005-10-25"
last_reply: "2005-10-26"
replies: 8
solved: false
page: 1
pages: 1
lang: "de"
---

# PHP Skript macht einen Header Fehler

TYPO3 › TypoScript · 8 Antworten · gestartet 2005-10-25

## Eröffnungsbeitrag

**matbehns** · 2005-10-25 · [Beitrag #1](https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler/1)

Hallo,

habe in meinem Template ein Bereich, wo ein random Bild eingefügt werden soll.

Dazu habe ich den Marker ###BILD### gesetzt.

Mein Typoscript sieht so aus:

```typoscript
##### Random Bild
marks.BILD = PHP_SCRIPT
marks.BILD.file = fileadmin/random_bild.php
```

und mein PHP Code:

```php
<?php
//Bildnummer 0 - 52
$num=rand(0,52);

echo "<style type="\&quot;text/css\&quot;" media="\&quot;screen\&quot;">";
echo "#header   { background: url(\"images/header/header".$num.".jpg\") no-repeat bottom center; }";
echo "</style>";

echo "<h1 id="\&quot;header\&quot;" onclick="\&quot;location.href" style="\&quot;cursor:" pointer="">";
echo "<a href="\&quot;$PHP_SELF\&quot;">Mat’s :: site  </a>";
echo "</h1>";
?>
```

Beim laden der Seite bekomme ich aber immer:

> Warning: Cannot modify header information - headers already sent by (output started at /var/kunden/webs/web_1/___cms/fileadmin/random_bild.php:5) in /var/kunden/webs/web_1/___cms/tslib/class.tslib_fe.php on line 2612

Hat jemand ne Idee wie ich den Header unterdrücken kann oder das Problem anders lösen kann? Danke euch schon mal!

Mat

## Antworten

### [#2](https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler/2) · Norman2k · 2005-10-25

Hast du dir schon mal die TSRef zu PHP_SCRIPT durch gelesen?
<https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/ContentObjects/UserAndUserInt/Index.html>

Norman

### [#3](https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler/3) · matbehns · 2005-10-25

Ja habe ich, da ich noch ein PHP Anfänger bin, sagt mir das leider nicht soviel! Kannst du vielleicht etwas ausführlicher werden!?

Danke, Mat

### [#4](https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler/4) · Norman2k · 2005-10-25

Du hast aber so viel Ahnung das du weißt was "echo" in PHP bewirkt. Dann musst du eigentlich auch diesen Text verstehen:

> Alle Inhalte müssen in $content geschrieben werden. **Keine Ausgabe durch echo.**

Entweder du änderst das in deinem Script oder schaust dir die beiden anderen Möglichkeiten an um PHP-Scripte einzubinden.

Norman

### [#5](https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler/5) · matbehns · 2005-10-25

Jaja, genau hier ist mein Verständnisproblem.

> Alle Inhalte müssen in $content geschrieben werden.

Heißt das alle Inhalte sollen in die Variable $content geschrieben und die dann mit print ausgegeben werden?

```php
print $content;
```

Sorry, das ich mich wahrscheinlich blöd anstelle, aber ich verstehe es nunmal leider nicht.

### [#6](https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler/6) · sirwylm · 2005-10-25

nein, dies heisst dass du deine ausgabe einfach an eine Variable namens "$content" übergibst, die Ausgabe derselben übernimmt typo3. Konkret bedeutet dies du am besten deine html-ausgaben in einem string sammelst und am schluss übergibts, zB so:

```php
<?php
//Bildnummer 0 - 52
$num=rand(0,52);
$mein_content="<style type="\" textcss="" media="\" screen="">";
$mein_content.="#header   { background: url  \"images/header/header".$num.".jpg\") no-repeat bottom center; }";
$mein_content.="</style>";
 
$mein_content.="<h1 id="\" header="" onclick="\" locationhref="" style="\" cursor:="" pointer="">";
$mein_content.=<a href="\" php_self="">Mat’s :: site  </a>";
$mein_content.="</h1>";

//inhalt an typo3 "übergeben"
$content=$mein_content;
?>
```

Beste Grüße,
Wilnis

PS: Irgendwie sehen deine Stringnotierungen auch komisch aus, schreib es doch lieber so

```php
$mein_content='<style type="" textcss="" media="" screen="">';
```

### [#7](https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler/7) · matbehns · 2005-10-25

Danke, das hat geklappt und ich habe das jetzt verstanden!  :D

> PS: Irgendwie sehen deine Stringnotierungen auch komisch aus, schreib es doch lieber so

Ja hab ich auch grad gesehen, habe das per copy und paste gemacht und irgendwie sind da Sachen verloren gegangen. Eigentlich sind zwischen den "" noch Inhalte!

Also, danke nochmal und einen schönen Abend!

### [#8](https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler/8) · sirwylm · 2005-10-25

ne..das meinte ich nicht, ich meinte die verwendung von den Anführungszeichen. Entweder du schreibst:

Variante 1 (escaped):

```php
$mein_content="<style type=\"\" textcss=\"\" media=\"\" screen=\"\">";
```

Variante 2 (gedreht):
geht auch dann hast du allerdings ' statt " im html-quelltext

```php
$mein_content="<style type='' textcss='' media='' screen=''>";
```

am sauberstersten ist (mein persönlicher geschmack):

```php
$mein_content='<style type="" textcss="" media="" screen="">';
```

dann hast du " im html-quelltext und dein php-quelltext lässt sich besser lesen, ist aber wie gesagt geschmackssache. Das bei deinen akutuellen Notationen à la:

```php
echo "<style type="\"text/css\"" media="\"screen\"">";
```

der Parser keinen Fehler auswirft ist Glück bzw. Zufall bzw. wundert mich  :o

Beste Grüße,
Wilnis

### [#9](https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler/9) · matbehns · 2005-10-26

Werde mir mal deine 3. Variante angewöhnen, die gefällt mir so auch am besten!

Danke! Mat

---

Quelle: „PHP Skript macht einen Header Fehler“, typo3.net, https://www.typo3.net/d/32240-php-skript-macht-einen-header-fehler
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
