<?php
$adress = $_POST["adress"];
$siyomoji = 'abcdefghijklmnopqrstuvwxyz0123456789!#$%&()=~{`}+_';
$mazemaze = (str_shuffle($siyomoji)) ;
$a = mb_strimwidth($mazemaze,0,5);
$file = fopen("http://×××.com/".$a,"w+");
fwrite($file,"<meta http-equiv=\"refresh\" content=\"0; url=".$adress."\">");
print("http://×××.com/".$a);
?>
というのを実行すると
Warning: fopen(http://×××.com/tez}7) [function.fopen]: failed to open stream: HTTP wrapper does not support writeable connections in /home/~~~/public/www/×××/a.php on line 6
Warning: fwrite(): supplied argument is not a valid stream resource in /home/~~~/public/www/×××/~~~/a.php on line 7
というエラーが出てきました
エラーメッセージそのままだと思いますが、やりたいことは何ですか?
http://example.com/compress.php
のようにアクセスできるプログラムを用意し、このプログラムに、http://too.long.example.com/too/long/hogehogeのように長いURLをPOSTすると、
というような出力を出し、ユーザが、
にアクセスした際は、http://too.long.example.com/too/long/hogehogeにリダイレクトするようなことをやりたいのでしょうか?
もしこれを希望なのであれば、compress.phpがやらなければいけない処理として、http://example.com/abcdefとしてアクセスされるファイルを作成することになります。
このファイルを作成するのに、ファイル入出力関すのHTTPアクセスのラッパーでは書き込みはできないので、
<ドキュメントルート>/abcdefというファイルを書き出さなければいけませんん。
例えばですが、上記のような構造、つまり、compress.phpと出力ファイルが同一ディレクトリであれば、
$file = fopen(dirname(__FILE__) . '/' . $a, "w+");
とでもしてやれば、いいでしょう。
ただ、実際に使うのであれば、上書きされないことなど、そのほかにも考慮する必要はあるとは思います。
何かの参考になれば。
大変ありがとうございました
まるで数学の模範解答のような筋の通った流れのある解答 あなたの言いたいことがスルリと頭の中に入ってきました
自分もこのくらいの文章を書けたらなと思います