PHP を使用して画像をサーバーにアップロードする際にファイル名をデータベースに保存する方法
画像を他のデータにリンクする場合、ファイル名をデータベースに保存する必要があります。あなたのアプリケーション。これにより、特定のレコードに関連付けられた画像を簡単に取得して表示できます。これを実現するには、ファイルのアップロードとデータベースの挿入を処理するいくつかのテクニックを使用する必要があります。
画像と追加情報を収集するフォームから始めましょう:
<form method="post" action="addMember.php" enctype="multipart/form-data"></p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><input type="text" name="nameMember" placeholder="Band Member Name"/> <input type="text" name="bandMember" placeholder="Band Member Position"/> <input type="file" name="photo" accept="image/*" /> <textarea name="aboutMember" placeholder="Additional Member Information"></textarea> <input type="text" name="otherBands" placeholder="Other Bands Member Has Been In"/> <input type="submit" name="upload" value="Add Member"/>
pre>
次に、フォーム データを処理し、画像のアップロードを処理するための PHP スクリプトを作成します。
<br><?php</p><p>$targetDirectory = "images/";<br>$targetFilePath = $targetDirectory 。 Basename($_FILES'photo');</p><p>$nameMember = $_POST['nameMember'];<br>$bandMember = $_POST['bandMember'];<br>$aboutMember = $_POST[' aboutMember'];<br>$otherBands = $_POST['otherBands'];</p><p>try {</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">// Connect to the database $conn = new PDO('mysql:host=localhost;dbname=yourdbname', 'username', 'password'); // Prepare the SQL statement to insert data into the database $stmt = $conn->prepare("INSERT INTO members (name, band_position, photo, about, other_bands) VALUES (:name, :band_position, :photo, :about, :other_bands)"); // Bind the parameters to the SQL statement $stmt->bindParam(':name', $nameMember); $stmt->bindParam(':band_position', $bandMember); $stmt->bindParam(':photo', $photoName); $stmt->bindParam(':about', $aboutMember); $stmt->bindParam(':other_bands', $otherBands); // Execute the SQL statement $stmt->execute(); // Upload the image to the server if (move_uploaded_file($_FILES['photo']['tmp_name'], $targetFilePath)) { // Image uploaded successfully echo "The file ". basename( $_FILES['photo']['name']). " has been uploaded, and your information has been added to the database."; } else { // Image upload failed echo "Sorry, there was a problem uploading your file."; }</p> <p>} catch (PDOException $e) {</p> <pre class="brush:php;toolbar:false">echo "Error: " . $e->getMessage();
}
$conn = null;
?>
このコードでは、PDO を使用してデータベース接続を確立し、SQL ステートメントを準備しますデータをデータベースに挿入します。また、フォーム データを SQL パラメーターにバインドし、ステートメントを実行します。最後に、指定したディレクトリに画像をアップロードします。
次の手順に従うことで、アップロードされたファイル名とその他の情報の両方をデータベースに正常に保存できます。
以上がPHP で画像をアップロードするときにファイル名をデータベースに保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。