Php 更改图像上载的名称
我有一个文件来修改我的个人资料,但我需要在上传过程中更改imagem的名称。 我需要这是没有替代图片已经在文件夹中,当我上传 我的文件的代码是:Php 更改图像上载的名称,php,image,upload,Php,Image,Upload,我有一个文件来修改我的个人资料,但我需要在上传过程中更改imagem的名称。 我需要这是没有替代图片已经在文件夹中,当我上传 我的文件的代码是: <?php include 'verificar.php'; require_once 'config.php'; $id = $_GET["id"]; $nome = $_POST["nome_perfil"]; $email = $_POST["email_perfil"]; // Configuração da Imagem
<?php
include 'verificar.php';
require_once 'config.php';
$id = $_GET["id"];
$nome = $_POST["nome_perfil"];
$email = $_POST["email_perfil"];
// Configuração da Imagem
$imagem = $_FILES["imagem_perfil"];
$destino = "img/perfil/".$imagem['name'];
if(isset($_POST["submit"])){
if(empty($nome) || empty($email))
{
header ("Location: index.php?page=erro");
}
elseif(empty($_FILES['imagem_perfil']['name']))
{
mysql_query("UPDATE utilizadores SET Nome='$nome', Email='$email' WHERE ID='$id'");
header ("Location: perfil_completo.php");
}
else
{
mysql_query("UPDATE utilizadores SET Nome='$nome', Email='$email', imgPerfil='".$imagem['name']."' WHERE ID='$id'");
if($imagem['type'] == "image/jpeg"){
move_uploaded_file($imagem['tmp_name'] , $destino);
}else if($imagem['type'] == "image/png"){
move_uploaded_file($imagem['tmp_name'] , $destino);
}else if($imagem['type'] == "image/gif"){
move_uploaded_file($imagem['tmp_name'] , $destino);
}
header ("Location: perfil_completo.php");
}
}
?>
现在解决方案:
<?php
include 'verificar.php';
require_once 'config.php';
$id = $_GET["id"];
$nome = $_POST["nome_perfil"];
$email = $_POST["email_perfil"];
// Configuração da Imagem
$imagem = $_FILES["imagem_perfil"];
$array = explode(".",$imagem['name']);
$destino = "img/perfil/".$id.".".end($array);
if(isset($_POST["submit"])){
if(empty($nome) || empty($email))
{
header ("Location: index.php?page=erro");
}
elseif(empty($_FILES['imagem_perfil']['name']))
{
mysql_query("UPDATE utilizadores SET Nome='$nome', Email='$email' WHERE ID='$id'");
header ("Location: perfil_completo.php");
}
else
{
mysql_query("UPDATE utilizadores SET Nome='$nome', Email='$email', imgPerfil='".$id.".".end($array)."' WHERE ID='$id'");
if($imagem['type'] == "image/jpeg"){
move_uploaded_file($imagem['tmp_name'] , $destino);
}else if($imagem['type'] == "image/png"){
move_uploaded_file($imagem['tmp_name'] , $destino);
}else if($imagem['type'] == "image/gif"){
move_uploaded_file($imagem['tmp_name'] , $destino);
}
header ("Location: perfil_completo.php");
}
}
?>
您可以更改此设置:
$destino = "img/perfil/".$imagem['name'];
为此:
$result = mysql_query("Select Nome from utilizadores WHERE ID='$id'");
$result = mysql_fetch_assoc($result);
$yourName = $result['Nome'];
$array = explode(".",$imagem['name']);
$destino = "img/perfil/".$yourName.".".end($array);
explode()
用于获取图像sufix
您可以将名称设置为
$yourName
变量您的意思是什么?如果上载目录中已有同名文件,是否希望重命名该文件?否,我希望重命名上载的任何文件。如何将imagem的名称更改为用户的ID?你能帮我做这件事吗?名字变了,但还是“18JPG”。在数据库名称没有改变的情况下,我修复了它。我放弃了在文件名中添加
,是的,它是固定的。现在是数据库。在我的查询中,如何输入这个名称?添加一个简单的sql语句以获取用户名。。。如果您不知道如何操作,请将您的用户表添加到问题中