php 파일이름 중복질문입니다 정보
php 파일이름 중복질문입니다
본문
<?php
if (isset($_POST["PHPSESSID"])) {
session_id($_POST["PHPSESSID"]);
}
session_start();
if (!isset($_FILES["Filedata"]) || !is_uploaded_file($_FILES["Filedata"]["tmp_name"]) || $_FILES["Filedata"]["error"] != 0) {
header("HTTP/1.1 500 File Upload Error");
if (isset($_FILES["Filedata"])) {
echo $_FILES["Filedata"]["error"];
}
exit(0);
}
$rnd_bit = rand(0, 99);
$upload_path = str_replace("\\", "/", realpath(dirname($_SERVER['SCRIPT_FILENAME']))) . "/uploads/";
$upload_path = "uploads/";
// Handle the upload
if (!move_uploaded_file($_FILES["Filedata"]["tmp_name"], $upload_path . $_FILES["Filedata"]["name"])) {
header("HTTP/1.1 500 Internal Server Error");
exit(0);
}
?>
플래시 업로드 관련 소스입니다
현재 동작은 잘 됩니다
다만 파일이름이 중복이 될경우가 문제라서요
전 프로그램밍은 전혀 할줄을 모릅니다
일단 알아본봐로는 시간을 파일이름에 넣어주거나 같은 이름이 있다면 그 뒤에 일정숫자를 더해주거나 하는 방법이 있는듯합니다
php 시간관련함수로 밑의 소스부분에 여러가지 형태로 이곳저곳 넣고 건드려봤습니다만
잘 되질 않네요
if (!move_uploaded_file($_FILES["Filedata"]["tmp_name"], $upload_path . $_FILES["Filedata"]["name"]))
파일이름에 무조건 시간을 넣어도 좋구요
이미 있는 파일이름이라면 이름뒤에 숫자를 오름차로 증가시켜 넣는것도 좋습니다
이게 좀더 어렵겠죠
도움좀 부탁드리겠습니다
if (isset($_POST["PHPSESSID"])) {
session_id($_POST["PHPSESSID"]);
}
session_start();
if (!isset($_FILES["Filedata"]) || !is_uploaded_file($_FILES["Filedata"]["tmp_name"]) || $_FILES["Filedata"]["error"] != 0) {
header("HTTP/1.1 500 File Upload Error");
if (isset($_FILES["Filedata"])) {
echo $_FILES["Filedata"]["error"];
}
exit(0);
}
$rnd_bit = rand(0, 99);
$upload_path = str_replace("\\", "/", realpath(dirname($_SERVER['SCRIPT_FILENAME']))) . "/uploads/";
$upload_path = "uploads/";
// Handle the upload
if (!move_uploaded_file($_FILES["Filedata"]["tmp_name"], $upload_path . $_FILES["Filedata"]["name"])) {
header("HTTP/1.1 500 Internal Server Error");
exit(0);
}
?>
플래시 업로드 관련 소스입니다
현재 동작은 잘 됩니다
다만 파일이름이 중복이 될경우가 문제라서요
전 프로그램밍은 전혀 할줄을 모릅니다
일단 알아본봐로는 시간을 파일이름에 넣어주거나 같은 이름이 있다면 그 뒤에 일정숫자를 더해주거나 하는 방법이 있는듯합니다
php 시간관련함수로 밑의 소스부분에 여러가지 형태로 이곳저곳 넣고 건드려봤습니다만
잘 되질 않네요
if (!move_uploaded_file($_FILES["Filedata"]["tmp_name"], $upload_path . $_FILES["Filedata"]["name"]))
파일이름에 무조건 시간을 넣어도 좋구요
이미 있는 파일이름이라면 이름뒤에 숫자를 오름차로 증가시켜 넣는것도 좋습니다
이게 좀더 어렵겠죠
도움좀 부탁드리겠습니다
댓글 전체

// Handle the upload
$fname = time();
if (!move_uploaded_file($_FILES["Filedata"]["tmp_name"], $upload_path . $fname . "_" . $_FILES["Filedata"]["name"])) {
header("HTTP/1.1 500 Internal Server Error");
exit(0);
}
$fname = time();
if (!move_uploaded_file($_FILES["Filedata"]["tmp_name"], $upload_path . $fname . "_" . $_FILES["Filedata"]["name"])) {
header("HTTP/1.1 500 Internal Server Error");
exit(0);
}

답변 감사드립니다
잘 동작합니다
뭐 초까지 들어가므로 중복되는경우는 없겠지만 그래도 시간관련 함수중에 어떤것이 가장
중복율을 줄일수 있을까요?
date ,time, strftime, mktime 등이 있던데요
물론 각각의 옵션들을 적용했을떄요
다시한번 감사드립니다
잘 동작합니다
뭐 초까지 들어가므로 중복되는경우는 없겠지만 그래도 시간관련 함수중에 어떤것이 가장
중복율을 줄일수 있을까요?
date ,time, strftime, mktime 등이 있던데요
물론 각각의 옵션들을 적용했을떄요
다시한번 감사드립니다

time - 현재 시간의 유닉스 타임스탬프 값을 구할때 사용
date - 타임스탬프 값을 년월일시분초 형태로 바꿀때 사용
mktime - 년월일시분초형태의 값을 유닉스 타임스탬프 값으로 바꿀때 사용
strftime - ?? 모름.
각각의 용도가 틀리죠.
date - 타임스탬프 값을 년월일시분초 형태로 바꿀때 사용
mktime - 년월일시분초형태의 값을 유닉스 타임스탬프 값으로 바꿀때 사용
strftime - ?? 모름.
각각의 용도가 틀리죠.