2017-02-24 2 views
-1

アンドロイドアプリケーションでユーザーアップロードを実装しようとしています。何らかの理由で、以下のコードが画像をアップロードできないように見えます。つまり、データベースエントリは完了しましたが、画像はフォルダに見つかりません。誰かがこれを助けることができますか?私はこのチュートリアルに従った:https://www.simplifiedcoding.net/android-upload-image-to-server/ 私は、データベースエントリで行われているパスを見ることができるので、正しいパスです。アンドロイドアプリからのアップロード、データベースエントリの挿入、画像が挿入されていません

<?php 

require_once 'dbDetails.php'; 

$upload_path = 'usr_upload/'; 

$server_ip = gethostbyname(gethostname()); 

$upload_url = 'http://'.$server_ip.'/wallpaper/games/'.$upload_path; 

$response = array(); 

if($_SERVER['REQUEST_METHOD'] == 'POST'){ 
    if(isset($_POST['name']) and isset($_FILES['image']['name'])){ 
     $con = mysqli_connect(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME) or die('unable to connect to database '); 
     $name = $_POST['name']; 

     $fileinfo = pathinfo($_FILES['image']['name']); 

     $extension = $fileinfo['extension']; 

     $file_url = $upload_url . getFileName() . '.'.$extension; 

     $file_path = $upload_path. getFileName(). '.'.$extension; 

     try{ 

      move_uploaded_file($_FILES['image']['tmp_name'], $file_path); 

      $sql = "INSERT INTO images (url, name) VALUES ('$file_url','$name')"; 
      if(mysqli_query($con,$sql)){ 
       $response['error'] = false; 
       $response['url'] = $file_url; 
       $response['name'] = $name; 
      } 

     }catch(Exception $e){ 
      $response['error'] = false; 
      $response['message'] = $e->getMessage(); 
     } 
     mysqli_close($con); 

    }else{ 
     $response['error'] = true; 
     $response['message'] = 'Please choose a file'; 
    } 

    echo json_encode($response); 
} 

function getFileName(){ 
    $con = mysqli_connect(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME) or die('Unable to connect'); 
    $sql = "SELECT max(id) as id FROM images"; 
    $result = mysqli_fetch_array(mysqli_query($con,$sql)); 
    mysqli_close($con); 
    if($result['id']==null){ 
     return 1; 
    }else{ 
     return ++$result['id']; 
    } 
} 

作成したエラー・ログがある:

PHP警告:move_uploaded_file():DOMAINNAME.COM/wallpaper/の 'usr_upload/3.JPG' 'への/ tmp/phpSv15lI' を移動できませんgames/usr_upload/upload.php on line 28

+0

[https://www.w3schools.com/php/php_file_upload.asp]このコードを使用してファイルをアップロードできます。 – Anonymous

+0

これは、フォルダに書き込むことができない可能性が高いためです。 HTMLフォームは不明なので、失敗していないことを確認してください。 –

+0

@ HK007あなたが与えたリンクには404が見つかりませんでした –

答えて

0

私はそれを自分で解決しましたが、私はPHPファイルで指定したリンクが間違っていました。

関連する問題