카페24로 서버 데이터베이스를 이용하고 있습니다.
php웹서버를 통해서 안드로이드 앱에서 사진을 업로드 하는 기능을 만들려고 하는데요
커넥트 정보랑 파일 업로드 경로를 잘 모르겠네요... 경로 계속 바꿔보고 찾아봤는데... ㅠ 사실 경로 문제인지도 잘 모르겠지만..
된다는 분들이 있는걸 보면 코드에는 문제가 없을 거 같은데 경로와 제 DB정보 입력이 정확한지 잘 모르겠습니다...
uploads 폴더에 파일이 업로드 되는되요 실제로 파일을 넣어서 경로를 보니 AndroidUploadImage 폴더를 건너 뛰고
http://ggavi2000.cafe24.come/uploads/tttt.png 이런 경로로 나오더라구요. 이게 실제 경로인거 같은데 이걸 경로로 잡아야하나요?
이것저것 경우의 수 생각 나는건 다 해본거 같은데... 경로를 잘 모르겠네요... 다른 파일 경로가 아니고 다른 문제인가..
https://www.simplifiedcoding.net/android-upload-image-to-server/ 의 예제를 실험 중입니다...
dbDetails.php
define('HOST','localhost');
define('USER','mysql아이디');
define('PASS','mysql비밀번호');
define('DB','테이블이 있는 DB이름');
upload.php
//importing dbDetails file
require_once 'dbDetails.php';
//this is our upload folder
$upload_path = 'uploads/';
//Getting the server ip
$server_ip = gethostbyname(gethostname());
//creating the upload url
$upload_url = 'http://'.$server_ip.'/AndroidImageUpload/'.$upload_path;
//response array
$response = array();
if($_SERVER['REQUEST_METHOD']=='POST'){
//checking the required parameters from the request
if(isset($_POST['name']) and isset($_FILES['image']['name'])){
//connecting to the database
$con = mysqli_connect(HOST,USER,PASS,DB) or die('Unable to Connect...');
¾Æ·¡ Äڵ带 ÀÛ¼ºÇϼż ÆäÀÌÁö ½ÇÇàÇϸé, ÇØ´ç ÆäÀÌÁö °æ·Î ±âÁØÀ¸·Î Àý´ë °æ·Î°¡ Ãâ·ÂµË´Ï´Ù.
<?php
echo realpath(".");
±×¿Ü ÆÄÀÏ °æ·Î¿¡ ¾²±â°¡ ¾ÈµÇ´Â °æ¿ì¿¡´Â ¾²±â±ÇÇÑÀ» üũÇÏ¿© º¸½Ã±â ¹Ù¶ø´Ï´Ù.
¹æ±Ý Çغ¸¾Ò½À´Ï´Ù ¤¾
±âº» www ÆÄÀÏ ¾È¿¡ ¸¸µç ÆÄÀÏ¿¡¼ php¸¦ ¾÷·ÎµåÇÏ°í ½ÇÇàÇغ¸´Ï ¾ÈµÇ´Â »óȲÀÌ ³×¿ä À½...
±ÇÇÑ µµ Àб⠾²±â ½ÇÇà 3°¡Áö´Ù üũµÇ¾î Àִµ¥µµ ¾ÈµÇ±¸
¾ÈµÇ¼ phpÆÄÀϵµ üũ Çغôµ¥ ±×·¡µµ ½ÇÇàµÇÁú ¾Ê³×¿ä ¤» Èì ¹æ¹ýÀ» ¹¹°¡ ¹®Á¦Áö...
´äº¯ °©»çÇÕ´Ï´Ù!
Æ÷½ºÆ®¸ÇÀ¸·Î À̹ÌÁö ¾÷·Îµå°¡ Àß µÇ´ÂÁö È®ÀÎÇÏ´Â °úÁ¤ÀÌ ÀÖ´Â°Í °°Àºµ¥, °£´ÜÇÏ°Ô À¥ÆûÀ» ¸¸µå¼Å¼ À̹ÌÁö°¡ Á¤»óÀûÀ¸·Î ¾÷·Îµå°¡ µÇ´ÂÁö ¸ÕÀú üũÇغ¸½Ã´Â°Ô ¾î¶³±î Çϳ׿ä.
print_r($_FILES); ·Î ÆÄÀÏ ¾÷·Îµå°¡ Á¤»óÀûÀ¸·Î ÁøÇàµÇ¸é ÆÄÀϹ迿¡ ³»¿ëÀÌ Ãâ·ÂµÉ °Ì´Ï´Ù.
±×¸®°í Ãß°¡ÀûÀ¸·Î phpȯ°æ ±âº»¼³Á¤Àº 2¸Þ°¡¹ÙÀÌÆ® ÀÌ»óÀÇ ÆÄÀÏ ¾÷·Îµå°¡ Á¦ÇѵǾî ÀÖÀ¸¹Ç·Î, À̺κРÄõÅ͵µ üũÇغ¸¼¼¿ä..
php.ini
upload_max_filesize = 2M
post_max_size = 8M
max_execution_time = 30
ÀÌ·± ¿É¼ÇµéÀÌ ÀÖ½À´Ï´Ù.
¸»¾¸ÇϽŴë·Î print_r($_FILES); À» ÇغýÀ´Ï´Ù!
ÀÏ´Ü °æ·Î¸¦ Ãß°¡µÈ Æú´õ·Î ¾²¸é ¾ÈµÇ´Â°Å °°½À´Ï´Ù ¤Ð
$upload_path = 'www/';
//Getting the server ip
$server_ip = gethostbyname(gethostname());
//creating the upload url
$upload_url = 'http://'.$server_ip.$upload_path;
www ±âº» Æú´õ·Î ÁöÁ¤ÇÏ´Ï 500¿¡·¯´Â »ç¶óÁ³½À´Ï´Ù!
ÀÌÈÄ¿¡ print_r($_FILES);À» ÂïÀ¸´Ï ¿¡·¯ 0ÀÌ ³ª¿Í¼ ã¾Æº¸´Ï
UPLOAD_ERR_OK
Value: 0; There is no error, the file uploaded with success. ¶ó´õ±º¿ä!
[]Array
(
[image] => Array
(
[name] => tttt.png
[type] => image/png
[tmp_name] => /tmp/php7s7CiS
[error] => 0
[size] => 184234
°¨»çÇÕ´Ï´Ù!
½ÇÁ¦ Ä«Æä24DB¶û FTP¿¡ ÀúÀåµÇÁö´Â ¾ÊÁö¸¸... Á» ´õ ¿¬±¸ÇغÁ¾ß°Ù³×¿ä! ¤¾
¿øÇÏ´Â À§Ä¡·Î ¿Å±â´Â ¿ªÇÒÀ» ÇÕ´Ï´Ù.
move_uploaded_file($_FILES['image']['tmp_name'],$file_path);
À̶§ ¿Å°ÜÁö´Â ´ë»ó °æ·ÎÀÎ $file_path µð·ºÅ丮 °æ·Î È®ÀÎ ¹× À¥¼¹ö ¾²±â ±ÇÇÑÀ» üũÇÏ¼Å¾ß ÇÏ°í¿ä.
±ÇÇÑÀº othersµµ ¾²±â ±ÇÇÑÀ» ÁÖ¾ú´ÂÁö ²À È®ÀÎÇغ¸¼¼¿©.
¸»¾¸ÇϽŠ±ÇÇÑ ´Ù üũÇؼ »ç¿ë°¡´É Çϵµ·Ï ÇØ¢ZÁö¸¸ ¾ÈµÇ´Â °É º¸¸é °æ·Î³ª
¸»¾¸ÇϽŠmove_uploaded_file ÀÌÈÄ¿¡ ÀÖ´Â if¹®¿¡ °É¸®°í Àִµ¥ À̺κÐÀÌ ¹®Á¦ °°³×¿ä
°©°©Çϳ׿ä Á¤¸» ÀÌ°Å ¤Ð
Å« µµ¿ò Á¤¸» °¨»çÇÕ´Ï´Ù ¤Ð
À§¿¡´Â ¾÷·Îµå À̹ÌÁö°í
ÄÚµå´Â À̹ÌÁö ¾÷·Îµå°í .
¼Ò½º¸¦ $upload_url = 'http://'.$server_ip.'/AndroidUploadImage/'.$upload_path; ·Î °íÄ¡¼¼¿ä
ÁÁÀº ÁöÀû °¨»çÇÕ´Ï´Ù! ÄÚµå µÇµ¹·Á¼ Çغ¸¾ÒÀ¸³ª 500¿¡·¯°¡ ¶ß´Â°É º¸´Ï Á¶±Ý ´Ù¸¥ ¹®Á¦µµ °°ÀÌ Æ÷ÇԵǾî Àִ°Š°°¾Æ¿ä ¤Ð
°¨»çÇÕ´Ï´Ù!
ÀÌƲµ¿¾È ÀÌ·¸°Ô ÁøÀüÀÌ ¾øÀ» ÁÙÀÌ¾ß »ý°¢µµ ¸øÇ߳׿ä ÀÚ±«°¨...
//
¾Æ php¸¦ .wwwÆú´õ¿¡¼ ½ÇÇà½ÃÅ°´Ï sql¿¡ Ä¿³ØÆ® µÇÁö ¾Ê¾Ò´Ù´Â ¸»ÀÌ ¶ß³×¿ä ¤§ üũÇغ¸°Ú½À´Ï´Ù °¨»çÇÕ´Ï´Ù!