[PHP-users 6868] Re: 配列で画像のコピー

hajime php-users@php.gr.jp
Sat, 13 Apr 2002 18:38:29 +0900


hajimeです。
加藤さん、お返事ありがとうございます。

> $value_nameという変数名には、いつどこでコピー先のファイル名を
> セットしているのでしょう?
$thumnail1〜5(ファイル名)を「copy_file_oya.php」のフォームで入力し、
その $thumnail1〜5を$thum[]配列に入れ替えて、
foreach文のなかで$thum[]配列のそれぞれの値$valueをcopyして作成してるつもりな
んですが・・・

> $thum[] = $thumnail2;
> として余分な配列を作っているから、
> コピーもとの指定がからっぽ(none)だよ
> という残りのエラーが出ています。
これは$thumnail2以降を指定してなので、当然ではあるんですが、

> $value_nameという変数が存在しないためにコピー先が
> ./juichi_gallery_img/photo01/となり、コピー先として指定されたのはディレクトリ
だ
そうです。これをどうすればいいのか?
コピー先のファイル名の指定方法をどうすればいいのか?



> あとせっかく返事を書いてもらったのですから、
> ちゃんと読みましょうよ。
そうですね。  きしださん、どうもすいません。

しかし、よくわからなかったのです。

なので、もっと実際にやってる状況にして質問しなおしてみたのですが、
その説明がなかったですね。申し訳ありません。

> 
> きしださんはあなたの質問が簡略化されすぎて分からなかった
> のではなく、エラーメッセージに含まれる
> './img/photo01//var/tmp/php000298'
> というPHPが認識しているファイルの記述がおかしいのだけど
> ここの指定の部分のプログラムを見直してみたら。
> ということが言っているのですが。
> 
> しかも丁寧に//と普通にパスを書くときにはしないスラッシュが
> 2つ続いている個所に^^とマークまでつけているのに。
> 
> さらに、
> 
> きしださん> 例えば、
> きしださん>   echo "./img/photo01/$thum[$i]_name";
> きしださん> として表示されるファイルが存在すると言うことですか?
> 
> と、あなたがいうパスがあっているという点はちゃんと確認したの?
> とまで念を押しているんですけどね。

たしかに、「//」というのはおかしいですよね。
./img/photo01/はサムネイル画像がコピーされるべきディレクトリで
/var/tmp/php00298というのは、以前画像のアップロードの件でも出てきたのですが、
一時的にその場所にコピーしてあるデータのパスだったと思うのですが・・・

また、「パスもあっている。」というのは表現を間違えたのだと思います。
『PHPファイルと同じ階層に「img」ディレクトリがあって、
その下に「photo01」ディレクトリを作っていますよ。
このなかにサムネイル画像を作るように指定しています。』ということです。


説明不足で大変申し訳ありませんでした。

hajime
hajime@ruru.ne.jp