2013-11-25 5 views
0

PHP에서 폼에 이미지 업로드 옵션이 있다면 어떻게 데이터베이스에 그 이미지를 저장할 수 있고 필요에 따라 어떻게 가져올 수 있습니까? 저는 이름과 같은 일부 필드가있는 폼이 있습니다. 연령 이메일 등 하나의 필드는 사용자의 이미지에 관한 것입니다. 그럼 어떻게 사진을 업로드하고 저장할 수 있으며 다음 page.Can에서 다시 HTML 코드에서 간단한 입력 태그를 사용하여 파일 형식으로 선언을 검색 할 수 말해줘.데이터베이스에 이미지 저장하기 및 검색하기

<body> 
<input type="file" accept="image/jpeg" /> 
<input type="submit" value="Submit Form"> 
</body> 
+1

이미지 경로가 이미지가 아닌 데이터베이스에 저장됩니다. – AdRock

+0

하드 드라이브에 물리적으로 업로드하고 db/path.php 파일을 db에 삽입하십시오. –

+0

왜 DB에 저장 하시겠습니까? FTP를 사용하지 않는 이유는 무엇입니까? 정상 SO 정확히 같은 약> 5 질문이에 데이터베이스 – Legionar

답변

1
  1. 당신은 <form>을 사용해야합니다.
  2. 양식에 enctype 속성이 있어야합니다.

예 : 당신은 $ _FILES를 사용할 필요가

<body> 
    <form action='index.php' method='POST' enctype='multipart/form-data'> 
    <input type="file" name="img" accept="image/jpeg" /> 
    <input type="submit" name="submit_button" value="Submit Form" /> 
    </form> 
</body> 

, 다음 move_uploaded_file()로 업로드합니다.

Use this tutorial

PS : 당신은 왜 dB로 업로드 하시겠습니까? 왜 서버에 저장하지 않습니까?

당신은 서버에 저장하고, DB에 경로를 작성해야 :

if (is_uploaded_file($_FILES['img']['tmp_name'])) { 
    move_uploaded_file($_FILES['img']['tmp_name'], 'some_folder_with_images/'.$_FILES['img']['name']); 
} 

을 그리고 다음이 쿼리 (예)입니다, 물론 당신이 파일 이름을 탈출하거나, 그냥 자신을 생성해야 서버에 저장된 파일의 파일 이름 :

$query = "INSERT INTO images (image_path) 
      VALUES ('".$_FILES['img']['name']."')"; 

추신 : mysqli_*를 사용 mysql_*이되지 않습니다.

관련 문제