2017-12-25 16 views
1
<?php 

if(isset($_POST["submit-post"])){ 
    $desc = $_POST['description']; 
    if (strpos($desc, "'") !== false) { 
     $desc = str_replace("'", "_", $desc); 
    } 
    $sql_home = "INSERT INTO home (description) VALUES ('$desc');"; 
    if($conn->query($sql_home) === TRUE){ echo "<br>Great!<br>"; } 
    else{ echo("<br>Nope!<br> "); } 
    $uploaddir = $_SERVER['DOCUMENT_ROOT']. '/imgs/home/'; 
    $uploadfile = $uploaddir . basename($_FILES['image']['name']); 
    if (move_uploaded_file($_FILES['image']['tmp_name'], $uploadfile)) { 
     echo "File is valid, and was successfully uploaded. <br>"; 
    } else { 
     echo "Possible file upload attack! <br>"; 
     echo "$uploadfile <br>"; 
    } 
    echo '<br>Here is some more debugging info: '; 
    print_r($_FILES); 
    echo "<br>"; 
    error_reporting(-1); ini_set("display_errors", true); //? 
} 

?> 

나는 그것이! "파일 업로드 공격의 가능성을"라는 이미지 (.JPG)을 업로드하려고 할 때마다 업로드하지 않습니다. 도움. 나는 절대 및 상대 두 경로를 시도PHP는 : 이미지를

  1. ;

    Warning: move_uploaded_file(/var/www/html/imgs/home/calcetto.jpg): failed to open stream: Permission denied in /var/www/html/admin/db/manage.php on line 199 
    Warning: move_uploaded_file(): Unable to move '/tmp/phpGvLsAC' to '/var/www/html/imgs/home/calcetto.jpg' in /var/www/html/admin/db/manage.php on line 199 
    

    주의 사항 : 나에게이 경고를 제공합니다

  2. php.ini의 :의 file_uploads는 =
  3. 에 내가 복사 php.net에서 코드를 붙여
  4. 이 파일을 업로드 할 /var/www/html/admin/db/manage.php
  5. 이미지는 여기입니다 : 여기

/var/www/html/imgs/home는 HTML입니다 :

<form action="" method="post" enctype="multipart/form-data"> 
    <textarea name='description' placeholder='Image description'></textarea><br> 
    <input type="file" name="image"><br><br> 
    <input type='submit' name='submit-post' value='Upload'></input> 
</form> 
+0

쓰기'error_reporting (-1); ini_set ("display_errors", true);'PHP를 시작하자마자 오류가 발생합니다. –

+0

디렉토리에 쓰기 권한이 있는지 확인하십시오. –

+0

"uploaddir"은 정의 된대로 올바른 위치에 있습니까? – TarangP

답변

0

의견에 대한 답을 쓰고 있습니다.

당신은 당신이 하위 디렉토리가있는 경우 가 다음에 쓰기 권한이 있어야합니다, 업로드 디렉토리에 대한 권한을 확인해야 할

error_reporting(-1); 
ini_set("display_errors", true); 

쓰기

을보고 PHP 오류에 의한 오류를 확인하시기 바랍니다 두 디렉터리 모두

다음 명령을 사용하여 사용 권한을 변경할 수 있습니다. -R은 하위 디렉터리에 대한 사용 권한도 업데이트합니다.

chmod -R 777 uploaddirectory