Comment stocker le nom de fichier dans la base de données lors du téléchargement d'une image sur le serveur à l'aide de PHP
Le stockage des noms de fichiers dans une base de données est nécessaire lorsque vous souhaitez lier des images à d'autres données dans votre candidature. Cela vous permet de récupérer et d'afficher facilement les images associées à des enregistrements spécifiques. Pour y parvenir, vous devrez utiliser quelques techniques pour gérer le téléchargement du fichier et l'insertion dans la base de données.
Commençons par le formulaire qui collecte l'image et les informations supplémentaires :
<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>
Ensuite, vous écrirez le script PHP pour traiter les données du formulaire et gérer le téléchargement de l'image :
<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>essayez {</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;
?>
Dans ce code, nous établissons une connexion à la base de données à l'aide de PDO et préparons une instruction SQL pour insérer les données dans la base de données. Nous lions également les données du formulaire aux paramètres SQL et exécutons l'instruction. Enfin, nous téléchargeons l'image dans le répertoire spécifié.
En suivant ces étapes, vous pouvez stocker avec succès à la fois le nom du fichier téléchargé et d'autres informations dans votre base de données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!