PHP で機能しない Move_uploaded_file() をトラブルシューティングするにはどうすればよいですか?

Patricia Arquette
リリース: 2024-10-18 14:18:03
オリジナル
671 人が閲覧しました

How to Troubleshoot a Non-Functioning Move_uploaded_file() in PHP?

Move_uploaded_file() 関数のトラブルシューティング

Web アプリケーションを通じてファイルをアップロードする場合、move_uploaded_file() 関数が問題なく動作することを確認することが重要です。ただし、ユーザーは、期待どおりに動作しないように見える場合があります。

この記事では、move_uploaded_file() が動作しない問題を詳しく掘り下げ、それに対処する解決策を提供します。

問題の概要

ユーザーは、ファイルのアップロードを処理するために move_uploaded_file() 関数を利用する PHP スクリプトを実装しました。ただし、チュートリアルで提供されたコードを複製したにもかかわらず、関数は正しく機能しません。

コード分析

フォームとアップロード スクリプトの HTML コードは正しいようです。これには、ファイル入力に必要な属性が含まれており、データを Upload_file.php スクリプトに送信します。

upload_file.php では、スクリプトは、名前、一時的な場所、サイズ、ファイル名など、アップロードされたファイルに関する情報を正しく抽出します。エラーコード。ただし、move_uploaded_file() 関数が誤って使用されているため、エラーが発生します。

解決策

この問題を解決するには、次の 2 つの手順が重要です:

  1. PHP エラー レポートを有効にする:
    これにより、PHP で詳細なエラー メッセージが表示され、問題の根本原因の特定に役立ちます。
  2. エラー コードを確認します:
    $_FILES'image' 変数には、失敗の理由を示すエラー コードが含まれています。一般的なエラー コードは次のとおりです。

    • UPLOAD_ERR_OK: エラーなし
    • UPLOAD_ERR_INI_SIZE: ファイル サイズがサーバーで許可されている最大値を超えています
    • UPLOAD_ERR_FORM_SIZE: ファイル サイズがサーバーで許可されている最大値を超えていますフォーム
    • UPLOAD_ERR_NO_FILE: ファイルはアップロードされませんでした
    • UPLOAD_ERR_PARTIAL: ファイルは部分的にのみアップロードされました

最終修正コード

これらの問題に対処すると、修正されたコードは次のようになります。

<code class="php">
<?php
$move = __DIR__.'/../../uploads/';
echo $_FILES["file"]['name']."<br>";
echo $_FILES["file"]['tmp_name']."<br>";
echo $_FILES["file"]['size']."<br>";
echo $_FILES['file']['error']."<br>";
move_uploaded_file($_FILES['file']['tmp_name'], $move);
?>
</code>
ログイン後にコピー

この更新されたコードでは、元のファイル名 (name) の代わりに一時ファイル名 (tmp_name) が使用されます。ファイルは目的の場所に正しく移動されました。

以上がPHP で機能しない Move_uploaded_file() をトラブルシューティングするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!