이 기사의 예에서는 PHP에서 파일을 업로드하고 데이터베이스에 저장하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
show_add.php 파일은 다음과 같습니다.
<?php
if(!isset($_REQUEST['id']) or $_REQUEST['id']=="") die("error: id none");
$id = $_REQUEST['id'];
//위치 기록, 읽기
$conn=mysql_connect("localhost","root","admin" );
if (!$conn) die("오류: mysql 연결 실패");
mysql_select_db("nokia Paymentplat",$conn);
$sql = "id=$id인 경우 수신에서 * 선택";
$result = mysql_query($sql,$conn);
if(!$result) die("error: mysql query");
$num=mysql_num_rows($result);
if($num< 1) die(" 오류: 이 레코더가 없습니다");
$data = mysql_result($result,0,"file_data");
$type = mysql_result($result,0,"file_type");
$ name = mysql_result($ result,0,"file_name");
mysql_close($conn);
//먼저 해당 파일 헤더를 출력하고 원래 파일명을 복원
header("Content-type:$type" );
header("Content-Disposition: attachment; filename=$name");
echo $data;
?>
show_info.php 파일은 다음과 같습니다.
<?php
if(!isset( $_REQUEST['id']) 또는 $_REQUEST['id']=="") die("error: id none");
$id = $_REQUEST['id'];
//위치 기록, 읽기
$conn=mysql_connect("localhost","root","admin");
if(!$conn) die("error: mysql connect failed");
mysql_select_db("nokia Paymentplat", $conn);
$sql = "id=$id인 수신에서 file_name,file_size 선택";
$result = mysql_query($sql,$conn);
if(!$result ) die(" error: mysql query");
//지정된 레코드가 없으면 오류가 보고됩니다
$num=mysql_num_rows($result);
if($num<1) die(" error: no this Recorder");
//다음 두 문장의 프로그램도 이렇게 쓸 수 있습니다
//$row=mysql_fetch_object($result);
//$name=$row->name;
//$size=$row->size;
$name = mysql_result($result,0 ,"file_name");
$size = mysql_result($result,0,"file_size");
mysql_close($conn);
echo "<hr>업로드된 파일 정보:";
echo "< ;br>파일 이름 - $name";
echo "<br>파일 크기 - $size";
echo "<br><a href=show_add.php?id=$id> ;첨부 파일< ;/a>";
?>
submit.php 파일은 다음과 같습니다:
<?php
if(is_uploaded_file($_FILES['myfile']['tmp_name'])) {
//이제 파일을 업로드했습니다
$myfile=$_FILES["myfile"];
//시간 초과 제한을 설정합니다. 기본 시간은 30초입니다. 0으로 설정하면 시간 제한이 없습니다
$time_limit =60 ;
set_time_limit($time_limit); //
//파일 내용을 문자열로 읽어옵니다
$fp=fopen($myfile['tmp_name'], "rb");
if(! $fp) die("파일 열기 오류");
$file_data = addlashes(fread($fp, filesize($myfile['tmp_name'])));
fclose($fp);
unlink($ myfile[' tmp_name']);
//파일 형식, 이름, 크기
$file_type=$myfile["type"];
$file_name=$myfile["name"];
$file_size=$ myfile[" size"];
die($file_type);
//데이터베이스에 연결하고 파일을 데이터베이스에 저장
$conn=mysql_connect("localhost","root","admin");
if (!$conn) die("오류: mysql 연결 실패");
mysql_select_db("nokia Paymentplat",$conn);
$sql="insert into receive
(file_data,file_type,file_name,file_size)
값 ('$file_data','$file_type','$file_name',$file_size)";
$result=mysql_query($sql,$conn);
//다음 문장은 방금 삽입 문의 ID를 가져옵니다
$id=mysql_insert_id();
mysql_close($conn);
set_time_limit(30) //기본 시간 제한 설정을 복원
echo " 업로드 성공 --- ";
echo "<a href='show_info.php?id=$id'>업로드된 파일 정보 표시</a>";
}
else {
echo "당신 파일을 업로드하지 않았습니다.";
}
?>
upload.php 파일은 다음과 같습니다:
<html>
<head>
<title>파일 업로드 양식< /title>
</head>
<table>
<form enctype='multipart/form-data' name='myform' action='submit.php'
method='post'>
<INPUT TYPE = "hidden" NAME = "MAX_FILE_SIZE" VALUE ="1000000">
<tr><td>업로드 파일 선택</td><td>
< ;입력 이름='myfile' type='파일'></td></tr>
<tr><td colspan='2'><입력 이름='제출 ' 값= '업로드' 유형='제출'</td></tr>
</table>
</body>
</html>