fatkatie Posted October 10, 2017 Share Posted October 10, 2017 What's going on here? After spending too much time on this I found that lines appearing after the php closing delimiter ?> caused some kind problem that stopped readfile. Here's the html: <img src='support/g.php' > and here is g.php <?php require_once 'defs.php'; $b = readfile('/98/fa/7d2e445c77fbc9bda6a860cc.jpg'); ?> Here's the defs.php file. This works fine. But if you add a couple of blank lines after the ?> it will break g.php. I don't know how or why. <?php $x = 1; ?> What's going on. I've never paid any attention to blanks after ?>. Does it matter. Is it a here doc thing? I've since edited all my includes. All now terminate immediately after the ?> PHP 5.6.24 (cli) (built: Jul 20 2016 21:19:29) Quote Link to comment https://forums.phpfreaks.com/topic/305309-spaceslines-after-php-close/ Share on other sites More sharing options...
Solution requinix Posted October 10, 2017 Solution Share Posted October 10, 2017 Given that you're outputting an image, it would be best not to output anything else but the image data. Best practices are to leave the final ?> out. This is a good reason why. 1 Quote Link to comment https://forums.phpfreaks.com/topic/305309-spaceslines-after-php-close/#findComment-1552585 Share on other sites More sharing options...
Sepodati Posted October 11, 2017 Share Posted October 11, 2017 Well, think about it. If the image is defined by the data "abcdef" and you output "abcdef\n\n", well, you haven't output the right bits for that image, have you. You've changed it by adding extra bits on the end. 1 Quote Link to comment https://forums.phpfreaks.com/topic/305309-spaceslines-after-php-close/#findComment-1552649 Share on other sites More sharing options...
fatkatie Posted October 11, 2017 Author Share Posted October 11, 2017 It obvious when you know. Thanks both. It was a tough one to solve. I've removed the terminal ?> per lazy's suggestion. Quote Link to comment https://forums.phpfreaks.com/topic/305309-spaceslines-after-php-close/#findComment-1552652 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.