ホームページ >バックエンド開発 >PHPチュートリアル >複数ファイルアップロード[Flash]プラグイン、PHPバージョンの問題
http://www.cnblogs.com/zjfree/archive/2011/01/06/1929100.html
上記のアドレスのコンテンツの説明に、原本の入手方法の PHP アップロード コードがあります。このPHPコードのファイル名は?
PHP コード:
$file_name = date('Ymd') . '_' . mt_rand(1, 1000) .jpg';
$file_path = '/img/user_img/' . '/';
$dir_path; >//ディレクトリ
@mkdir($dir, 0777, true);
$img_path = $file_name = 'http://' ; の作成に失敗しました。 _SERVER ["HTTP_HOST"] . $file_name;
if (count($_FILES) > 0)
{
$f = current($_FILES); 🎜 > move_uploaded_file($f["tmp_name"], $img_path);
}
else
{
$rawpostdata = file_get_contents("php://input"); > $myfile = fopen($img_path, "w") または die("ファイルを開けません!");
fwrite($myfile, $rawpostdata);
echo $img_url;
ディスカッションへの返信 (解決策)
$rawpostdata = file_get_contents("php://input") //受信ストリームを読み取ります
$myfile = fopen($img_path, " w ") or die("ファイルを開けません!");
fwrite($myfile, $rawpostdata); //取得したデータをファイルに書き込みます
fclose($myfile); 明らかに彼はファイル名を渡さなかったので、当然それはわかりませんしかし、このブランチの
move_uploaded_file($f["tmp_name"], $img_path);
}
$f["name"] は元のファイルですname
$rawpostdata = file_get_contents("php://input"); // 受信ストリームを読み取ります
$myfile = fopen($img_path, "w") または die (" ファイルを開けません!");
fwrite($myfile, $rawpostdata); // 取得したデータをファイルに書き込みます
明らかにそうではありません。ファイル名を渡しても、当然それは取得できません
しかし、このブランチの
if (count($_FILES) > 0)
{
move_uploaded_file($f["tmp_name"], $img_path);
$f["name"] は元のファイル名です
ありがとうございます。受信ストリーム モードを読み取るときは、画像ストリーム情報のみがあり、ファイル名情報はありません。