如何使用php和mysqli修复上载图片

时间:2019-03-02 04:29:04

标签: php mysqli

我尝试将mysql替换为mysqli,但是在此代码中遇到错误,它之前在mysql上有效。怎么了?

Php:

<?php include "../../../_includes/config.php"; ?>
<?php
session_start();
if(!empty($_FILES['userAvatar']['name'])){
  $uploadedFile = "";
  if(!empty($_FILES["userAvatar"]["type"])){
    $filename = $_FILES['userAvatar']['name'];
    $valid_extensions = array("jpeg", "jpg", "png");
    $temporary = explode(".", $_FILES["userAvatar"]["name"]);
    $file_extension = end($temporary);
    if((($_FILES["userAvatar"]["type"] == "image/png") || ($_FILES["userAvatar"]["type"] == "image/jpg") || ($_FILES["userAvatar"]["type"] == "image/jpeg")) && in_array($file_extension, $valid_extensions)){
      $sourcePath = $_FILES['userAvatar']['tmp_name'];
      $targetPath = "../../../uploads/image/".$filename;
      if(move_uploaded_file($sourcePath, $targetPath)){
        $uploadedFile = $filename;
      }
    }
  }
  $display_name = $_POST['display_name'];
  $biography = $_POST['biography'];
  $sql = mysqli_query($connect, "UPDATE tb_users SET userDisplayName = '$display_name', userBiography = '$biography', userAvatar = '$uploadedFile' WHERE userLogin = '".$_SESSION['is_logged_in']['userLogin']."'") or die(mysqli_error());
  if($sql){
    echo "ok";
  }else{
    echo "err";
  }
}else{
  echo "err";
}
?>

结果总是“错误”。

2 个答案:

答案 0 :(得分:0)

尝试此代码:-

$sql = mysqli_query($connect, "UPDATE tb_users SET userDisplayName = '$display_name', userBiography = '$biography', userAvatar = '$uploadedFile' WHERE userLogin = '".$_SESSION['is_logged_in']['userLogin']."'") or die(mysqli_error($connect));

//不需要

if($sql){
    echo "ok";
}else{
    echo "err";
}

答案 1 :(得分:0)

在下面尝试此代码

<?php

 $dbhost = 'localhost:3306';
   $dbuser = 'root';
   $dbpass = '';
   $dbname = 'your db';
   $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$dbname);

   if(! $conn ) {
      die('Could not connect: ' . mysqli_error());
   }
   echo 'Connected successfully<br>';


session_start();
if(!empty($_FILES['userAvatar']['name'])){
  $uploadedFile = "";
  if(!empty($_FILES["userAvatar"]["type"])){
    $filename = $_FILES['userAvatar']['name'];
    $valid_extensions = array("jpeg", "jpg", "png");
    $temporary = explode(".", $_FILES["userAvatar"]["name"]);
    $file_extension = end($temporary);
    if((($_FILES["userAvatar"]["type"] == "image/png") || ($_FILES["userAvatar"]["type"] == "image/jpg") || ($_FILES["userAvatar"]["type"] == "image/jpeg")) && in_array($file_extension, $valid_extensions)){
      $sourcePath = $_FILES['userAvatar']['tmp_name'];
      $targetPath = "../../../uploads/image/".$filename;
      if(move_uploaded_file($sourcePath, $targetPath)){
        $uploadedFile = $filename;
      }
    }
  }
  $display_name = $_POST['display_name'];
  $biography = $_POST['biography'];

   $sql ="UPDATE tb_users SET userDisplayName = '$display_name', userBiography = '$biography', userAvatar = '$uploadedFile' WHERE userLogin = '".$_SESSION['is_logged_in']['userLogin']."'";

   if (mysqli_query($conn, $sql)) {
      echo "Record updated successfully";
   } else {
      echo "Error updating record: " . mysqli_error($conn);
   }
   mysqli_close($conn);

}else{
  //echo "err";
}
?>