-1
ファイルに自分のデータベースにファイルをアップロードできる管理ページがあります。問題はファイルの名前にピリオド(。)が付いているときにスクリプトが拡張子として読み取ります。たとえば、「flower1.1.jpg」という名前のファイルをアップロードすると、jpg拡張子を付けずに「flower1.1」となりました。 私のPHPアップロードスクリプト:拡張子として認識するファイル名のピリオド
<?php
function upload_file()
{
if(isset($_FILES["user_image"]))
{
$extension = explode('.', $_FILES['user_image']['name']);
$new_name = $extension[0] . '.' . $extension[1];
$destination = './upload/' . $new_name;
move_uploaded_file($_FILES['user_image']['tmp_name'], $destination);
return $new_name;
}
}
function get_image_name($user_id)
{
include('db3.php');
$statement = $connection->prepare("SELECT image FROM users1 WHERE id = '$user_id'");
$statement->execute();
$result = $statement->fetchAll();
foreach($result as $row)
{
return $row["image"];
}
}
function get_total_all_records()
{
include('db3.php');
$statement = $connection->prepare("SELECT * FROM users1");
$statement->execute();
$result = $statement->fetchAll();
return $statement->rowCount();
}
?>
私はあなたの最初のコードと、それを試してみましたdoesntのそれは$ new_nameを認識しません。 function –
@AppleJohnええ、 '$ new_name'はもう存在しません。私の部分に小さなタイプミス。 '$ _FILES ['user_image'] ['name']'を返すだけです。 – FrankerZ
ありがとうございました –