From:             mike-bugs dot php dot net at webheat dot co dot uk
Operating system: Linux
PHP version:      4.3.10
PHP Bug Type:     Filesystem function related
Bug description:  file_get_contents() does not accept urls containing hypen 
period "-."

Description:
------------
A script I created ( http://webheat.co.uk/forumbuddy.php ) takes a
username for the site DeviantArt.com which forms parts of the user's
section of the site. The url takes the form of:
http://USERID.deviantart.com/

The script grabs one or more pages by using the file_get_contents()
function.
Regardless of whether I use urlencode()/rawurlencode() and urldecode() the
file_get_contents() function chokes with the error as detailed below.

This only happens when the userid ends in a hypen.
After some testing it seems to be that this is because the hyphen is then
next to a period "-."

This hyphen period combination causes an error regardless of where it is
placed in the user id.


This issue happens on my host's server but not on two other [Windows]
machines I've tested this code on.

The hosting company have gone through their php.ini file on my behalf and
whilst the file is not vanilla there are no differences that they can see
would affect this fuction.

Reproduce code:
---------------
The relevant code is as follows:
file_get_contents("http://emdeeuk-.deviantart.com";); //Doesn't work

file_get_contents("http://emdee-.uk.deviantart.com";); //Doesn't work

file_get_contents("http://emdeeuk.deviantart.com";); //Does work


The full code can be viewed here:
http://webheat.co.uk/forumbuddytest.php.txt

Expected result:
----------------
<a href="http://www.deviantart.com/deviation/14935843/";>Dogs on Kites</a>
<a href="http://www.deviantart.com/deviation/14935312/";>Welcome to the Rat
Race</a>
<a href="http://www.deviantart.com/deviation/14934730/";>Arc de
Bishopsgate</a>
<a href="http://www.deviantart.com/deviation/14592356/";>PLEASE VOTE: New
Webheat.co.uk</a>
<a href="http://www.deviantart.com/deviation/14586143/";>Docklands
Sunbathing</a>
<a href="http://www.deviantart.com/deviation/14556463/";>Slide PSP8
Frame</a>

<a href="http://www.deviantart.com/deviation/14556193/";>Whitechapel
Horse</a>
<a href="http://www.deviantart.com/deviation/14521593/";>Action
Squirrel</a>
<a href="http://www.deviantart.com/deviation/14520802/";>Beady Eye of the
Plottin Drake</a>
<a href="http://www.deviantart.com/deviation/14485015/";>Light House
II</a>
<a href="http://www.deviantart.com/deviation/14377961/";>Polaroid Photo
Frames</a>
<a href="http://www.deviantart.com/deviation/14217085/";>Now where's the
Sphinx?</a>

<a href="http://www.deviantart.com/deviation/14213953/";>Something in the
Aer</a>
<a href="http://www.deviantart.com/deviation/14125157/";>I Sea Gulls</a>
<a href="http://www.deviantart.com/deviation/14124660/";>Coots really get
my Goose</a>
<a href="http://www.deviantart.com/deviation/13932181/";>Spoonful of
sugar</a>
<a href="http://www.deviantart.com/deviation/13757002/";>Ugly Emotion</a>
<a href="http://www.deviantart.com/deviation/13729717/";>Light House</a>

<a href="http://www.deviantart.com/deviation/13729376/";>Ilm Tree</a>
<a href="http://www.deviantart.com/deviation/13705596/";>Only ugly on the
inside</a>
<a href="http://www.deviantart.com/deviation/13639781/";>Lava
Lamponians</a>
<a href="http://www.deviantart.com/deviation/13597782/";>Generations</a>
<a href="http://www.deviantart.com/deviation/9434166/";>Flame Mobile
Wallpaper</a>
<a href="http://www.deviantart.com/deviation/9421010/";>Flame Body Work
Wallpaper</a> 

Actual result:
--------------
Warning: file_get_contents(): php_network_getaddresses: getaddrinfo
failed: Name or service not known in
/home/webheat/public_html/forumbuddytest.php on line 6

Warning:
file_get_contents(http://USER-.deviantart.com/gallery/?view=3&order=5&limit=24&offset=0):
failed to open stream: Permission denied in
/home/webheat/public_html/forumbuddytest.php on line 6

-- 
Edit bug report at http://bugs.php.net/?id=31923&edit=1
-- 
Try a CVS snapshot (php4):   http://bugs.php.net/fix.php?id=31923&r=trysnapshot4
Try a CVS snapshot (php5.0): 
http://bugs.php.net/fix.php?id=31923&r=trysnapshot50
Try a CVS snapshot (php5.1): 
http://bugs.php.net/fix.php?id=31923&r=trysnapshot51
Fixed in CVS:                http://bugs.php.net/fix.php?id=31923&r=fixedcvs
Fixed in release:            http://bugs.php.net/fix.php?id=31923&r=alreadyfixed
Need backtrace:              http://bugs.php.net/fix.php?id=31923&r=needtrace
Need Reproduce Script:       http://bugs.php.net/fix.php?id=31923&r=needscript
Try newer version:           http://bugs.php.net/fix.php?id=31923&r=oldversion
Not developer issue:         http://bugs.php.net/fix.php?id=31923&r=support
Expected behavior:           http://bugs.php.net/fix.php?id=31923&r=notwrong
Not enough info:             
http://bugs.php.net/fix.php?id=31923&r=notenoughinfo
Submitted twice:             
http://bugs.php.net/fix.php?id=31923&r=submittedtwice
register_globals:            http://bugs.php.net/fix.php?id=31923&r=globals
PHP 3 support discontinued:  http://bugs.php.net/fix.php?id=31923&r=php3
Daylight Savings:            http://bugs.php.net/fix.php?id=31923&r=dst
IIS Stability:               http://bugs.php.net/fix.php?id=31923&r=isapi
Install GNU Sed:             http://bugs.php.net/fix.php?id=31923&r=gnused
Floating point limitations:  http://bugs.php.net/fix.php?id=31923&r=float
No Zend Extensions:          http://bugs.php.net/fix.php?id=31923&r=nozend
MySQL Configuration Error:   http://bugs.php.net/fix.php?id=31923&r=mysqlcfg

Reply via email to