Re: [PHP-DB] Copying an image from one server to another
ioannes wrote: OK but I could execute the script on the target server, which is also mine. So the jpg on the source is actually the remote server, I would be reading a remote file and writing it to the server which is executing the script. OK I guess i completely misunderstood what you were doing then (and I guess everyone else did too :P). easy. $remote_image = file_get_contents('http://domain.com/image.jpg'); file_put_contents('/path/to/image/folder/image.jpg'); or if it's a big image use fopen, fputs, fclose (read the manual for using these). -- Postgresql & php tutorials http://www.designmagick.com/ -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
On Feb 5, 2008 2:57 PM, ioannes <[EMAIL PROTECTED]> wrote: > Am I right in thinking that exec() executes a string as a call to a > program which executes in a shell? So am I to write: > > $callthis="the contents of my rsynch file"; > exec($callthis); Filtered :-\ -- Daniel P. Brown Senior Unix Geek -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
Am I right in thinking that exec() executes a string as a call to a program which executes in a shell? So am I to write: $callthis="the contents of my rsynch file"; exec($callthis); ? John ioannes wrote: OK, so how would I hand over the list of files from php to the script? And am I right that I would write the rsynch code in a text file called anything.txt and the rsync at the start of the line is what calls up the rsynch program, unlike php where you need to call it something.php - though I have never questioned that assumption. Or is there a way to call rsynch from the same scrpit that php is in? I can't visualise it. John John Mr Webber wrote: The pattern in you --include-from=FILE_CONTAINING_FILENAME_PATTERNS could be just a list of files that you can generate from your PhpScript. Get it now? -- -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
OK, so how would I hand over the list of files from php to the script? And am I right that I would write the rsynch code in a text file called anything.txt and the rsync at the start of the line is what calls up the rsynch program, unlike php where you need to call it something.php - though I have never questioned that assumption. Or is there a way to call rsynch from the same scrpit that php is in? I can't visualise it. John John Mr Webber wrote: The pattern in you --include-from=FILE_CONTAINING_FILENAME_PATTERNS could be just a list of files that you can generate from your PhpScript. Get it now? -- -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP-DB] Copying an image from one server to another
The pattern in you --include-from=FILE_CONTAINING_FILENAME_PATTERNS could be just a list of files that you can generate from your PhpScript. Get it now? -Original Message- From: ioannes [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 05, 2008 1:22 PM To: php-db@lists.php.net Subject: Re: [PHP-DB] Copying an image from one server to another I am and have been reading http://samba.org/ftp/rsync/rsync.html, which is one web page but 44 real pages. I see that FILE is a term used the rsynch script. Is this something output from the php script, and if so how is it channelled from one to the other? I see the following: - start quote - **--exclude-from=FILE** This option is related to the *--exclude* option, but it specifies a FILE that contains exclude patterns (one per line). Blank lines in the file and lines starting with ';' or '#' are ignored. If /FILE/ is *-*, the list will be read from standard input. **--include-from=FILE** This option is related to the *--include* option, but it specifies a FILE that contains include patterns (one per line). Blank lines in the file and lines starting with ';' or '#' are ignored. If /FILE/ is *-*, the list will be read from standard input. **--files-from=FILE** Using this option allows you to specify the exact list of files to transfer (as read from the specified FILE or *-* for standard input). It also tweaks the default behavior of rsync to make transferring just the specified files and directories easier: * The *--relative* (*-R*) option is implied, which preserves the path information that is specified for each item in the file (use *--no-relative* or *--no-R* if you want to turn that off). * The *--dirs* (*-d*) option is implied, which will create directories specified in the list on the destination rather than noisily skipping them (use *--no-dirs* or *--no-d* if you want to turn that off). * The *--archive* (*-a*) option's behavior does not imply *--recursive* (*-r*), so specify it explicitly, if you want it. * These side-effects change the default state of rsync, so the position of the *--files-from* option on the command-line has no bearing on how other options are parsed (e.g. *-a* works the same before or after *--files-from*, as does *--no-R* and all other options). The filenames that are read from the FILE are all relative to the source dir -- any leading slashes are removed and no ".." references are allowed to go higher than the source dir. For example, take this command: |rsync -a --files-from=/tmp/foo /usr remote:/backup| If /tmp/foo contains the string "bin" (or even "/bin"), the /usr/bin directory will be created as /backup/bin on the remote host. If it contains "bin/" (note the trailing slash), the immediate contents of the directory would also be sent (without needing to be explicitly mentioned in the file -- this began in version 2.6.4). In both cases, if the *-r* option was enabled, that dir's entire hierarchy would also be transferred (keep in mind that *-r* needs to be specified explicitly with *--files-from*, since it is not implied by *-a*). Also note that the effect of the (enabled by default) *--relative* option is to duplicate only the path info that is read from the file -- it does not force the duplication of the source-spec path (/usr in this case). In addition, the *--files-from* file can be read from the remote host instead of the local host if you specify a "host:" in front of the file (the host must match one end of the transfer). As a short-cut, you can specify just a prefix of ":" to mean "use the remote end of the transfer". For example: |rsync -a --files-from=:/path/file-list src:/ /tmp/copy| This would copy all the files specified in the /path/file-list file that was located on the remote "src" host. - end quote - but I don't understand anything really from the synopsis: - start quote - SYNOPSIS Local: rsync [OPTION...] SRC... [DEST] Access via remote shell: Pull: rsync [OPTION...] [EMAIL PROTECTED]:SRC... [DEST] Push: rsync [OPTION...] SRC... [EMAIL PROTECTED]:DEST Access via rsync daemon: Pull: rsync [OPTION...] [EMAIL PROTECTED]::SRC... [DEST] rsync [OPTION...] rsync://[EMAIL PROTECTED]:PORT]/SRC... [DEST] Push: rsync [OPTION...] SRC... [EMAIL PROTECTED]::DEST rsync [OPTION...] SRC... rsync://[EMAIL PROTECTED]:PORT]/DEST - end quote - What is push and pull? I am guessing I might achieve something by writing a rsynch script with lines like: |rsync -av
Re: [PHP-DB] Copying an image from one server to another
On Feb 5, 2008 9:49 AM, ioannes <[EMAIL PROTECTED]> wrote: > OK but I could execute the script on the target server, which is also > mine. So the jpg on the source is actually the remote server, I would > be reading a remote file and writing it to the server which is executing > the script. Then you could do something like this: http://www.remote.come/image.jpg";; exec('wget '.$filename); ?> As always, sanitizing and customizing are up to you. -- Daniel P. Brown Senior Unix Geek -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
an page for rsync? -Original Message----- From: ioannes [mailto:[EMAIL PROTECTED] Sent: Tuesday, February 05, 2008 9:48 AM To: php-db@lists.php.net Subject: Re: [PHP-DB] Copying an image from one server to another I was unsure what was meant by FILE in php - is that the global? How do I reference a remote site's jpg file into FILE? Then how to I create the output from the php into stdout - using the return of a function? or print? Then how to launch rsynch - I understand how to call it from cron, as my web server kindly gives me an interface for this, but to create the file I would need to know what extension to save with the script name, and how to make it execute, ie the equivalent of rsynch scripts. Then how is FILE read by rsynch script. So lots more questions just to copy a publicly available image into my site. There has got to be an easier way. John Mr Webber wrote: Note the rsync option: --include-from=FILE This option is related to the --include option, but it specifies a FILE that contains include patterns (one per line). Blank lines in the file and lines starting with ';' or '#' are ignored. If FILE is -, the list will be read from standard input. So, from a PhpScript, you manage the contents of "FILE" and then launch rsync with the appropriate additional options. -----Original Message- From: ioannes [mailto:[EMAIL PROTECTED] Sent: Monday, February 04, 2008 12:59 PM To: php-db@lists.php.net Subject: Re: [PHP-DB] Copying an image from one server to another Initially I could not find much on SCP and rsynch is about synchronising folders, but that is only part of the problem. I don't want files in the target location that are not referenced from the target database. I hold references like this img[]=pic1.jpg&img[]=pic2.jpg then I parse it out into the img array. So I want to do it from php programming and am on a shared server. I may have access to the terminal for linux/unix but I am not too strong in that area. So am I wrong to be still thinking of cURL? John Aleksandar Vojnovic wrote: How about sending the file via SCP? (it would be a much more safer to transfer files) -Aleksander Chris wrote: ioannes wrote: I am trying to: - check whether an image file exists on a server, - check whether it does not exist on another server, and if not exists - to copy from the first location to the second. I am using cURL. First step to capture the image from the first server. When I return this image to the browser I get a lot of strange characters. So has this captured the image and what do I use next to upload to the second server? I was trying to use file_exists and had problems referencing the file location as "http://.mysite.com/pic.jpg";. But I know I can also look at using readfile() and file_put_contents(), $fp = fopen(), fputs(), fpassthru() etc. What is best way? FTP. There's no way fopen is going to be able to write to a remote url, that'd just be such a huge security issue it's not funny. -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
OK but I could execute the script on the target server, which is also mine. So the jpg on the source is actually the remote server, I would be reading a remote file and writing it to the server which is executing the script. Chris wrote: ioannes wrote: This is too advanced for me and having spent several hours reading I am no wiser. Given that I understand cURL and uploading files is possible - http://us3.php.net/features.file-upload - it should be just a matter of referencing a .jpg using a URL into a variable and uploading it to the target server, but from a script rather than a web form. Would file() work as the documentation seems to refer to text files that are read line by line. http://us3.php.net/manual/en/function.file.php You cannot use file or fputs to WRITE to a url or remote server. You will have to find another way (one being ftp: http://www.php.net/ftp). -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
I was unsure what was meant by FILE in php - is that the global? How do I reference a remote site's jpg file into FILE? Then how to I create the output from the php into stdout - using the return of a function? or print? Then how to launch rsynch - I understand how to call it from cron, as my web server kindly gives me an interface for this, but to create the file I would need to know what extension to save with the script name, and how to make it execute, ie the equivalent of rsynch scripts. Then how is FILE read by rsynch script. So lots more questions just to copy a publicly available image into my site. There has got to be an easier way. John Mr Webber wrote: Note the rsync option: --include-from=FILE This option is related to the --include option, but it specifies a FILE that contains include patterns (one per line). Blank lines in the file and lines starting with ';' or '#' are ignored. If FILE is -, the list will be read from standard input. So, from a PhpScript, you manage the contents of "FILE" and then launch rsync with the appropriate additional options. -Original Message- From: ioannes [mailto:[EMAIL PROTECTED] Sent: Monday, February 04, 2008 12:59 PM To: php-db@lists.php.net Subject: Re: [PHP-DB] Copying an image from one server to another Initially I could not find much on SCP and rsynch is about synchronising folders, but that is only part of the problem. I don't want files in the target location that are not referenced from the target database. I hold references like this img[]=pic1.jpg&img[]=pic2.jpg then I parse it out into the img array. So I want to do it from php programming and am on a shared server. I may have access to the terminal for linux/unix but I am not too strong in that area. So am I wrong to be still thinking of cURL? John Aleksandar Vojnovic wrote: How about sending the file via SCP? (it would be a much more safer to transfer files) -Aleksander Chris wrote: ioannes wrote: I am trying to: - check whether an image file exists on a server, - check whether it does not exist on another server, and if not exists - to copy from the first location to the second. I am using cURL. First step to capture the image from the first server. When I return this image to the browser I get a lot of strange characters. So has this captured the image and what do I use next to upload to the second server? I was trying to use file_exists and had problems referencing the file location as "http://.mysite.com/pic.jpg";. But I know I can also look at using readfile() and file_put_contents(), $fp = fopen(), fputs(), fpassthru() etc. What is best way? FTP. There's no way fopen is going to be able to write to a remote url, that'd just be such a huge security issue it's not funny. -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
ioannes wrote: This is too advanced for me and having spent several hours reading I am no wiser. Given that I understand cURL and uploading files is possible - http://us3.php.net/features.file-upload - it should be just a matter of referencing a .jpg using a URL into a variable and uploading it to the target server, but from a script rather than a web form. Would file() work as the documentation seems to refer to text files that are read line by line. http://us3.php.net/manual/en/function.file.php You cannot use file or fputs to WRITE to a url or remote server. You will have to find another way (one being ftp: http://www.php.net/ftp). -- Postgresql & php tutorials http://www.designmagick.com/ -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
This is too advanced for me and having spent several hours reading I am no wiser. Given that I understand cURL and uploading files is possible - http://us3.php.net/features.file-upload - it should be just a matter of referencing a .jpg using a URL into a variable and uploading it to the target server, but from a script rather than a web form. Would file() work as the documentation seems to refer to text files that are read line by line. http://us3.php.net/manual/en/function.file.php John Chris wrote: Aleksandar Vojnovic wrote: How about sending the file via SCP? (it would be a much more safer to transfer files) SFTP will work nicely though I don't know if there's a native SCP type function in php. I know there is the pecl library but that's not going to be available in most places (but again it depends on what the OP's trying to do and if it's meant to run in a shared or dedicated environment). Chris wrote: ioannes wrote: I am trying to: - check whether an image file exists on a server, - check whether it does not exist on another server, and if not exists - to copy from the first location to the second. I am using cURL. First step to capture the image from the first server. When I return this image to the browser I get a lot of strange characters. So has this captured the image and what do I use next to upload to the second server? I was trying to use file_exists and had problems referencing the file location as "http://.mysite.com/pic.jpg";. But I know I can also look at using readfile() and file_put_contents(), $fp = fopen(), fputs(), fpassthru() etc. What is best way? FTP. There's no way fopen is going to be able to write to a remote url, that'd just be such a huge security issue it's not funny. -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
Aleksandar Vojnovic wrote: How about sending the file via SCP? (it would be a much more safer to transfer files) SFTP will work nicely though I don't know if there's a native SCP type function in php. I know there is the pecl library but that's not going to be available in most places (but again it depends on what the OP's trying to do and if it's meant to run in a shared or dedicated environment). Chris wrote: ioannes wrote: I am trying to: - check whether an image file exists on a server, - check whether it does not exist on another server, and if not exists - to copy from the first location to the second. I am using cURL. First step to capture the image from the first server. When I return this image to the browser I get a lot of strange characters. So has this captured the image and what do I use next to upload to the second server? I was trying to use file_exists and had problems referencing the file location as "http://.mysite.com/pic.jpg";. But I know I can also look at using readfile() and file_put_contents(), $fp = fopen(), fputs(), fpassthru() etc. What is best way? FTP. There's no way fopen is going to be able to write to a remote url, that'd just be such a huge security issue it's not funny. -- Postgresql & php tutorials http://www.designmagick.com/ -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP-DB] Copying an image from one server to another
Note the rsync option: --include-from=FILE This option is related to the --include option, but it specifies a FILE that contains include patterns (one per line). Blank lines in the file and lines starting with ';' or '#' are ignored. If FILE is -, the list will be read from standard input. So, from a PhpScript, you manage the contents of "FILE" and then launch rsync with the appropriate additional options. -Original Message- From: ioannes [mailto:[EMAIL PROTECTED] Sent: Monday, February 04, 2008 12:59 PM To: php-db@lists.php.net Subject: Re: [PHP-DB] Copying an image from one server to another Initially I could not find much on SCP and rsynch is about synchronising folders, but that is only part of the problem. I don't want files in the target location that are not referenced from the target database. I hold references like this img[]=pic1.jpg&img[]=pic2.jpg then I parse it out into the img array. So I want to do it from php programming and am on a shared server. I may have access to the terminal for linux/unix but I am not too strong in that area. So am I wrong to be still thinking of cURL? John Aleksandar Vojnovic wrote: > How about sending the file via SCP? (it would be a much more safer to > transfer files) > > -Aleksander > > Chris wrote: >> ioannes wrote: >>> I am trying to: >>> >>> - check whether an image file exists on a server, >>> - check whether it does not exist on another server, and if not exists >>> - to copy from the first location to the second. >>> >>> I am using cURL. First step to capture the image from the first >>> server. When I return this image to the browser I get a lot of >>> strange characters. So has this captured the image and what do I >>> use next to upload to the second server? >>> >>> I was trying to use file_exists and had problems referencing the >>> file location as "http://.mysite.com/pic.jpg";. But I know I can >>> also look at using readfile() and file_put_contents(), $fp = >>> fopen(), fputs(), fpassthru() etc. What is best way? >> >> FTP. >> >> There's no way fopen is going to be able to write to a remote url, >> that'd just be such a huge security issue it's not funny. >> > > -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
Initially I could not find much on SCP and rsynch is about synchronising folders, but that is only part of the problem. I don't want files in the target location that are not referenced from the target database. I hold references like this img[]=pic1.jpg&img[]=pic2.jpg then I parse it out into the img array. So I want to do it from php programming and am on a shared server. I may have access to the terminal for linux/unix but I am not too strong in that area. So am I wrong to be still thinking of cURL? John Aleksandar Vojnovic wrote: How about sending the file via SCP? (it would be a much more safer to transfer files) -Aleksander Chris wrote: ioannes wrote: I am trying to: - check whether an image file exists on a server, - check whether it does not exist on another server, and if not exists - to copy from the first location to the second. I am using cURL. First step to capture the image from the first server. When I return this image to the browser I get a lot of strange characters. So has this captured the image and what do I use next to upload to the second server? I was trying to use file_exists and had problems referencing the file location as "http://.mysite.com/pic.jpg";. But I know I can also look at using readfile() and file_put_contents(), $fp = fopen(), fputs(), fpassthru() etc. What is best way? FTP. There's no way fopen is going to be able to write to a remote url, that'd just be such a huge security issue it's not funny. -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
On Feb 4, 2008 11:03 AM, Daniel Brown <[EMAIL PROTECTED]> wrote: > On Feb 3, 2008 11:03 PM, Chris <[EMAIL PROTECTED]> wrote: > > FTP. > > > > There's no way fopen is going to be able to write to a remote url, > > that'd just be such a huge security issue it's not funny. > > I must've missed when the W3C and IETF forced a disable on POST. ;-P Whoops! I must've also missed reading comprehension in school. I glanced over it too quickly and missed the specific reference to fopen(). Sorry! -- Daniel P. Brown Senior Unix Geek -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
On Feb 3, 2008 11:03 PM, Chris <[EMAIL PROTECTED]> wrote: > FTP. > > There's no way fopen is going to be able to write to a remote url, > that'd just be such a huge security issue it's not funny. I must've missed when the W3C and IETF forced a disable on POST. ;-P -- Daniel P. Brown Senior Unix Geek -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
How about sending the file via SCP? (it would be a much more safer to transfer files) -Aleksander Chris wrote: ioannes wrote: I am trying to: - check whether an image file exists on a server, - check whether it does not exist on another server, and if not exists - to copy from the first location to the second. I am using cURL. First step to capture the image from the first server. When I return this image to the browser I get a lot of strange characters. So has this captured the image and what do I use next to upload to the second server? I was trying to use file_exists and had problems referencing the file location as "http://.mysite.com/pic.jpg";. But I know I can also look at using readfile() and file_put_contents(), $fp = fopen(), fputs(), fpassthru() etc. What is best way? FTP. There's no way fopen is going to be able to write to a remote url, that'd just be such a huge security issue it's not funny. -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] Copying an image from one server to another
ioannes wrote: I am trying to: - check whether an image file exists on a server, - check whether it does not exist on another server, and if not exists - to copy from the first location to the second. I am using cURL. First step to capture the image from the first server. When I return this image to the browser I get a lot of strange characters. So has this captured the image and what do I use next to upload to the second server? I was trying to use file_exists and had problems referencing the file location as "http://.mysite.com/pic.jpg";. But I know I can also look at using readfile() and file_put_contents(), $fp = fopen(), fputs(), fpassthru() etc. What is best way? FTP. There's no way fopen is going to be able to write to a remote url, that'd just be such a huge security issue it's not funny. -- Postgresql & php tutorials http://www.designmagick.com/ -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php