카페24 mysql php로 이용 하는 질문

   조회 6133   추천 0    

 카페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함수인 realpath() 를 사용하셔서 절대경로를 알아낸 다음, 해당 경로로 셋팅하셔도 됩니다.
아래 코드를 작성하셔서 페이지 실행하면, 해당 페이지 경로 기준으로 절대 경로가 출력됩니다.
<?php
echo realpath(".");
그외 파일 경로에 쓰기가 안되는 경우에는 쓰기권한을 체크하여 보시기 바랍니다.
     
쁘앙쁘앙 2018-01
최인혁님 감사합니다 
방금 해보았습니다 ㅎ
기본 www 파일 안에 만든 파일에서 php를 업로드하고 실행해보니 안되는 상황이 네요 음...
 권한 도 읽기 쓰기 실행 3가지다 체크되어 있는데도 안되구
안되서 php파일도 체크 해봤는데 그래도 실행되질 않네요 ㅋ 흠 방법을 뭐가 문제지...
답변 갑사합니다!
          
해당 기능은 php서버단만 하더래도 이미지 받아 특정폴더에 저장하는 기능, DB에 메타를 입력하는 기능으로 크게 구분되고, 앱단에서 POST방식으로 파일업로드를 호출하는 기능으로 구분되서 요소가 많은데, php 중간중간 print_r() 함수를 사용해서 특정 상황마다 정상적으로 구문이 동작하는지 디버깅 작업이 먼저 필요해 보입니다.
포스트맨으로 이미지 업로드가 잘 되는지 확인하는 과정이 있는것 같은데, 간단하게 웹폼을 만드셔서 이미지가 정상적으로 업로드가 되는지 먼저 체크해보시는게 어떨까 하네요.
print_r($_FILES); 로 파일 업로드가 정상적으로 진행되면 파일배열에 내용이 출력될 겁니다.
그리고 추가적으로 php환경 기본설정은 2메가바이트 이상의 파일 업로드가 제한되어 있으므로, 이부분 쿼터도 체크해보세요..
php.ini
upload_max_filesize = 2M
post_max_size = 8M
max_execution_time = 30
이런 옵션들이 있습니다.
               
쁘앙쁘앙 2018-01
정말 큰 도움 감사합니다.
말씀하신대로 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() 함수를 사용해서
원하는 위치로 옮기는 역할을 합니다.
move_uploaded_file($_FILES['image']['tmp_name'],$file_path);
이때 옮겨지는 대상 경로인 $file_path 디렉토리 경로 확인 및 웹서버 쓰기 권한을 체크하셔야 하고요.
권한은 others도 쓰기 권한을 주었는지 꼭 확인해보세여.
                         
쁘앙쁘앙 2018-01
감사합니다 ㅠ
말씀하신 권한 다 체크해서 사용가능 하도록 해줫지만 안되는 걸 보면 경로나
말씀하신 move_uploaded_file 이후에 있는 if문에 걸리고 있는데  이부분이 문제 같네요

  갑갑하네요 정말 이거 ㅠ

큰 도움 정말 감사합니다 ㅠ
조용원 2018-01
경로명 틀렸네요
위에는 업로드 이미지고

코드는 이미지 업로드고 .
조용원 2018-01
폴더명을 AndroidImageUpload 이걸로 고치든가

소스를 $upload_url = 'http://'.$server_ip.'/AndroidUploadImage/'.$upload_path; 로 고치세요
     
쁘앙쁘앙 2018-01
답변감사합니다! 
좋은 지적 감사합니다! 코드 되돌려서 해보았으나 500에러가 뜨는걸 보니 조금 다른 문제도 같이 포함되어 있는거 같아요 ㅠ

감사합니다! 
이틀동안 이렇게 진전이 없을 줄이야 생각도 못했네요 자괴감...
//
아 php를 .www폴더에서 실행시키니 sql에 커넥트 되지 않았다는 말이 뜨네요 ㄷ 체크해보겠습니다 감사합니다!
          
조용원 2018-01
www 폴더는 ftp 에서만 보이는 폴더입니다. 웹페이지에서는 사실상 루트이고
               
쁘앙쁘앙 2018-01
좋은 정보 감사합니다!


QnA
제목Page 4265/5718
2014-05   5208191   정은준1
2015-12   1739948   백메가
2020-04   3379   허인구마틴
2016-11   5242   김건우
2019-02   3510   시도니
2009-10   9675   오상훈
2020-05   3008   검은콩
03-21   158   승리의샌디…
2021-09   2581   SLALqHD
2017-12   3978   늘파란
2020-05   3165   박종대
2015-12   4100   최시영
2016-11   6174   장동건2014
2015-12   3559   알팡
2018-01   4589   조형
2009-11   6458   천상의풍경
2013-01   5374   스팀팩마린
2015-12   4178   이현길
2009-12   8246   원상현
2013-01   5788   황혼을향해
2016-11   5185   퍼싱글
2018-01   6134   쁘앙쁘앙