Maison > développement back-end > tutoriel php > Comment stocker les noms de fichiers et les données de formulaire dans une base de données lors du téléchargement d'images avec PHP ?

Comment stocker les noms de fichiers et les données de formulaire dans une base de données lors du téléchargement d'images avec PHP ?

DDD
Libérer: 2024-10-26 06:13:31
original
452 Les gens l'ont consulté

How to Store File Names and Form Data in a Database While Uploading Images with PHP?

Stockage du nom de fichier dans la base de données lors du téléchargement de l'image

Question :

Comment peut-on stocker le nom du fichier et d'autres données de formulaire dans une base de données lors du téléchargement d'une image sur un serveur à l'aide de PHP ?

Solution :

1. Structure du formulaire :

Utilisez le code HTML suivant pour créer un formulaire qui capture les informations requises :

<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>
Copier après la connexion

2. Code côté serveur :

Traitez les données du formulaire à l'aide du script PHP suivant :

<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>
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal