Project

General

Profile

Actions

Bug #21383

closed

cObject FILE dos not Work with PHP 5.3

Added by Olaf Clemens about 15 years ago. Updated over 14 years ago.

Status:
Closed
Priority:
Should have
Assignee:
Category:
-
Target version:
-
Start date:
2009-10-27
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
4.3
PHP Version:
5.3
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

page = PAGE
page.10 = FILE
page.10.file = fileadmin/datei.html

did not work in TYPO3 4.3 beta2 with PHP 5.3.
Works fine with PHP 5.2.x

(issue imported from #M12370)


Files

patch_20091125_1.diff (694 Bytes) patch_20091125_1.diff Administrator Admin, 2009-11-26 10:51
Actions #1

Updated by Oliver Hader about 15 years ago

Hi Olaf,

do your PHP/Apache logfiles tell something about it?

Actions #2

Updated by Olaf Clemens about 15 years ago

Hi Oliver,

there is no entry in the error log (error reporting E_STRICT).

I test ist again with TYPO3 4.3 dev revision 6354.

php -v
PHP 5.3.0 (cgi-fcgi) (built: Sep 10 2009 12:32:08)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies

no output in Frontend.

With

php -v
PHP 5.2.11 (cgi) (built: Sep 22 2009 09:29:23)
Copyright (c) 1997-2009 The PHP Group

The file is shown in the frontend.

Actions #3

Updated by Rupert Germann about 15 years ago

hi

just tested it with PHP 5.3 on win (xammp) -> your snippet works as expected

Actions #4

Updated by Olaf Clemens about 15 years ago

Hi,

confusing,

on windows xampp works fine - that’s right on a Linux system not.

Are there some other guys that test it on a Linux system?

So I am sorry, it can closed and it is only my FILE failure ;)

Actions #5

Updated by Erik Sokoll almost 15 years ago

We have the same problem.
For example the following (root) TS-Template...
--------------------------------------------------------
page = PAGE
page.typeNum = 0
page.5 = HTML
page.5.value = blafasel
page.10 = TEMPLATE
page.10 {
template = FILE
template.file = fileadmin/templates/erik_test.html
workOnSubpart = DOCUMENT_BODY
subparts.CONTENT < styles.content.get
}
--------------------------------------------------------
...returns only 'blafasel' inside the <body> tag

If I do the same within 'file = GIFBUILDER' it does not work as well.

Our PHP configuration looks like this.
http://62.146.189.230/_phpinfo.php

Actions #6

Updated by Mirko Kaufmann almost 15 years ago

I have tested this issue in TYPO3 4.3.0-RC2 in combination with PHP 5.3.0. I have the same error, it only works with PHP 5.2.x. The apache error log throws no error. Someone has an idea?

Actions #7

Updated by Julian Hofmann almost 15 years ago

Hi.

I tested this snippet and can confirm this behaviour for symlinked installations.

Testing enviroment:
- LAMP, PHP 5.3.1 (cgi-fcgi)
- TYPO3 4.3.RC2 (also *beta3, *RC1) based on tar.gz-package

Imagine a file structure like:
/www/htdocs/
/www/htdocs/typo3_src -> ../typo3_src-4.3.0RC2
/www/typo3_src-4.3.0RC2

Calling is_file() in t3lib/class.t3lib_tstemplate.php, line 1203 fails, so getFileName() returns nothing. Accordingly fileContent() in same class returns nothing, because $incFile is empty.

Why does is_file() fail?
As parameter of this function call, TYPO3 gives "fileadmin/datei.html" to PHP. PHP uses as working directory the symlinked folder (/www/typo3_src-4.3.0RC2/) instead of our webroot (/www/htdocs/). So, PHP searches the template as /www/typo3_src-4.3.0RC2/fileadmin/datei.html which does not exist.

So, it is a bug in PHP. Because this wrong behaviour of PHP returns from time to time(2007-09-07, PHP-Bug 42587; 2008-12-08, 46814; 2009-11-12, 50159), we should find a solution for TYPO3.

One possibillity should be setting $this->getFileName_backPath to PATH_site before calling is_file() in case $this->getFileName_backPath is empty. See patch

Actions #8

Updated by Mirko Kaufmann almost 15 years ago

Right, i got a symlink installation. In the version 4.3.0-rc2 the patch is already implemented but unfortunately no success. (PHP 5.3.0)

I will try it with PHP 5.3.1 in the next hours.

Actions #9

Updated by Mirko Kaufmann almost 15 years ago

Same error with PHP 5.3.1 Without symlinks it works well.

Actions #10

Updated by Benni Mack almost 15 years ago

Hey,

I cannot reproduce this issue on my system (Mac, apache2_mod_php, PHP 5.3.0) with the latest trunk version. Can you try again?

All the best,
Benni.

Actions

Also available in: Atom PDF