I have a line of code that is supposed to copy image from one directory to another:
copy("http://localhost:8080/wordpress/wp-content/uploads/2015/06/uploaded_background.jpg","http://localhost:8080/wordpress/wp-content/themes/landing-page/img/desktop-background.jpg");
This is located in wordpress theme header.php file, however I am receiving an error message:
Warning: copy(http://localhost:8080/wordpress/wp-content/themes/landing-page/img/desktop-background.jpg): failed to open stream: HTTP wrapper does not support writeable connections in C:\wamp\www\wordpress\wp-content\themes\landing-page\header.php on line 42
Line 42 is where my copy function line is located.
How can I solve this issue. Any suggestions or links would help a lot.
instead of using
copy("http://localhost:8080/wordpress/wp-content/uploads/2015/06/uploaded_background.jpg","http://localhost:8080/wordpress/wp-content/themes/landing-page/img/desktop-background.jpg");
try
copy`("/yourserverfolderpath/wordpress/wp-content/uploads/2015/06/uploaded_background.jpg","/yourserverfolderpath//wordpress/wp-content/themes/landing-page/img/desktop-background.jpg");`
yourserverfolderpath/
could be something like /home/user/abc/
see you ftp or cpanel for exact path
see this SO question as guideline
PS: In case of local file, path would be something like D:\php\www\www\xml.php
as pointed by @dlegall in comments and as per documentation, First param of copy()
can be a valid URL, see the docs here
You should use a local path as a 2nd parameter to copy(), since http protocol does not support file overwriting.
The destination path. If dest is a URL, the copy operation may fail if the wrapper does not support overwriting of existing files. Source : http://php.net/manual/en/function.copy.php