首页  >  文章  >  后端开发  >  如何使用 PHP 上传图像并将其文件名与其他表单数据一起存储在 MySQL 数据库中?

如何使用 PHP 上传图像并将其文件名与其他表单数据一起存储在 MySQL 数据库中?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-26 11:21:29166浏览

How can I upload an image and store its file name in a MySQL database along with other form data using PHP?

使用 PHP 上传图像时如何将文件名与其他信息一起存储在数据库中

问题:

您在将文件上传到服务器并将其文件名存储在 MySQL 数据库中时面临挑战。此外,您需要创建一个表单,使您能够向数据库提交附加数据。这个任务似乎很艰巨,您需要一个全面的解决方案来集成这些元素。

答案:

这里有一个详细的解决方案,包含表单的结构和 PHP 代码处理文件上传和数据输入所需的:

表单结构:

<code class="html"><form method="post" action="addMember.php" enctype="multipart/form-data">
  <!-- Fields for entering band member info -->
  <!-- File input field for uploading photo -->
  <input type="hidden" name="size" value="350000">
  <input type="file" name="photo">
  <!-- Other form fields for additional information -->
  <!-- Submit button -->
</form></code>

PHP代码:

<code class="php"><?php
// Database connection
$db = mysqli_connect("yourhost", "username", "password", "dbName");

// Handle file upload
$target = "your directory" . basename($_FILES['photo']['name']);
$pic = basename($_FILES['photo']['name']);
if (move_uploaded_file($_FILES['photo']['tmp_name'], $target)) {
  // File uploaded successfully

  // Extract form data
  $name = $_POST['nameMember'];
  $bandMember = $_POST['bandMember'];
  $about = $_POST['aboutMember'];
  $bands = $_POST['otherBands'];

  // Prepare SQL query
  $sql = "INSERT INTO tableName (nameMember, bandMember, photo, aboutMember, otherBands)
          VALUES ('$name', '$bandMember', '$pic', '$about', '$bands')";

  // Execute query to insert data and image name into database
  mysqli_query($db, $sql);
  echo "File uploaded and information added to database.";
} else {
  // File upload failed
  echo "Error uploading file.";
}
?></code>

说明:

  • PHP 代码连接到数据库。
  • 它通过指定目标目录并将文件移动到该位置来处理文件上传.
  • 代码从表单字段捕获所有必要的信息。
  • 它准备一个 SQL 查询以将数据插入数据库,包括文件名。
  • 查询执行后,会将文件名和所有其他信息添加到数据库中。
  • 您可以根据您的具体要求自定义表单字段和数据库表。

这个全面的解决方案提供了上传文件、将其文件名存储在数据库中以及从表单中插入其他信息的分步指南。

以上是如何使用 PHP 上传图像并将其文件名与其他表单数据一起存储在 MySQL 数据库中?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn