ホームページ >バックエンド開発 >PHPチュートリアル >PHP で画像をアップロードする際に、ファイル名とフォーム データをデータベースに保存するにはどうすればよいですか?
画像のアップロード中にファイル名をデータベースに保存する
質問:
どのように保存できますかPHP を使用して画像をサーバーにアップロードするときに、データベース内のファイル名とその他のフォーム データを確認しますか?
解決策:
1.フォームの構造:
次の HTML コードを使用して、必要な情報を取得するフォームを作成します。
<code class="html"><form method="post" action="addMember.php" enctype="multipart/form-data"> <p>Band Member Name:</p> <input type="text" name="nameMember"> <p>Member's Position:</p> <input type="text" name="bandMember"> <p>Photo:</p> <input type="hidden" name="size" value="350000"> <input type="file" name="photo"> <p>Other Information:</p> <textarea rows="10" cols="35" name="aboutMember"></textarea> <p>Other Bands:</p> <input type="text" name="otherBands" size=30> <input type="submit" name="upload" value="Add Member"> </form></code>
2.サーバー側コード:
次の PHP スクリプトを使用してフォーム データを処理します:
<code class="php">// Database connection and selection $conn = mysqli_connect("host", "username", "password", "database"); if (!$conn) { die("Database connection failed: " . mysqli_connect_error()); } // Form data extraction $name = $_POST['nameMember']; $bandMember = $_POST['bandMember']; $photo = $_FILES['photo']['name']; $about = $_POST['aboutMember']; $bands = $_POST['otherBands']; // Photo upload target directory $target = "directory/"; $target .= basename($photo); // Insert data into the database $sql = "INSERT INTO tableName (nameMember, bandMember, photo, aboutMember, otherBands) VALUES ('$name', '$bandMember', '$photo', '$about', '$bands')"; $result = mysqli_query($conn, $sql); // Check for successful insertion if ($result) { // If successful, move the uploaded photo to the server if (move_uploaded_file($_FILES['photo']['tmp_name'], $target)) { echo "File uploaded and data saved successfully."; } else { echo "Error uploading file."; } } else { echo "Error saving data."; } mysqli_close($conn);</code>
以上がPHP で画像をアップロードする際に、ファイル名とフォーム データをデータベースに保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。