2016-09-10 11 views
2

PHPコードPHPのファイルアップロード

$target = "upload/"; 
$nameF = ""; 

$targetImage = "upload/"; 
$nameI = ""; 

if (!empty($_FILES['fileUP']['name'])) { 
    print_r("ce il file"); 
    $target = $target . basename($_FILES['fileUP']['name']); 
    $nameF = $_FILES['fileUP']['name']; 
    if (!move_uploaded_file($_FILES['fileUP']['tmp_name'], $target)) { 
    echo -1; 
    } 
} 

if (!empty($_FILES['imageUP']['name'])) { 
    $targetImage = $targetImage . basename($_FILES['imageUP']['name']); 
    $nameI = $_FILES['imageUP']['name']; 
    if (!move_uploaded_file($_FILES['imageUP']['tmp_name'], $targetImage)) { 
    echo -1; 
    } 
} 

$title = $_POST['title']; 
$admin = $_POST['admin']; 
$content = $_POST['content']; 


$sql = "INSERT INTO news (title,admin,content,img,file) values('$title','$admin','$content','$nameI','$nameF')"; 
$result = $conn->query($sql) or die(mysql_error()); 

if ($result === TRUE) { 

    echo 1; 
} else { 
    echo -1; 
} 

フォーム

<form enctype="multipart/form-data" id="insert" class="bs-example bs-example-form" method="POST"> 
    <div class="input-group"> 
     <span class="input-group-addon">Titolo</span> 
     <input id="title" name="title" type="text" class="form-control" placeholder="Titolo"> 
    </div> 

    <br> 

    <div class="input-group"> 
     <span class="input-group-addon">Admin</span> 
     <input id="admin" name="admin" type="text" class="form-control" value='{{$utente|lower}}' 
       placeholder='{{$utente}}'> 
    </div> 

    <br><br> <br> <br> 

    <div class="input-group"> 

     <span class="input-group-addon">Immagine</span> 
     <input id="image" name="imageUP" accept="image/*" type="file" class="form-control" 
       placeholder="Immagine"> 

    </div> 
    <br> 
    <div class="input-group"> 
     <span class="input-group-addon">File</span> 
     <input id="image" name="fileUP" id="fileToUpload" type="file" class="form-control" 
       placeholder="FIle"> 
    </div> 

    <br> 
    <div class="input-group"> 
     <span class="input-group-addon"><span class="glyphicon glyphicon-font"></span></span> 
     <input id="content" name="content" type="text" class="form-control" 
       placeholder="Contenuto"> 
    </div> 
    <br> 
    <button id="crea" type="submit" class="btn btn-warning">Crea</button> 
</form> 

Ajaxリクエストは

$('#insert').submit(function (e) { 
    e.preventDefault(); 
    var data = new FormData($(this)[0]); 

    $.ajax 
    ({ 
    url: 'uploads.php', 
    data: data, 
    type: 'post', 
    processData: false, 
    contentType: false, 
    success: function (response) { 
    response = parseInt(response); 
    switch (response) { 
    case -1: //errore generico 
    alert("errore"); 
    break; 
    case 1: 
    alert("la creazione della news è andata a buon fine"); 
    break; 
    } 

    close ajax call.. 

私の問題は、次のとおりです。 スクリプトはうまくいきませんが、「コンテンツ」入力と画像アップロードにテキストを挿入するとクエリにデータが挿入されないことに気付きました。私が作業しているとき/fakepath/xx.jpg

:ファイル::/// C

ローカルリソースをロードすることはできません:私はこのエラーましコンソールで

localhostで私はこのエラーがなく、常にデータを挿入するクエリを持っています。今私は問題を抱えており、私は実際のサーバーにいます。

誰もがそれを修正するために知っていますか? ù

+0

私はそれを試してみたところ、うまくいきました。私はもう一度試しましたが、うまくいきませんでした。 ITはとても奇妙です! –

+0

スクリプトがうまくいかなかったとき、コンソールでこのリクエストが利用可能なプレビューがなく、-1でないことを確認します –

+0

* upload *フォルダには読み書きの権限がありますか? –

答えて

1

はこれを試してみてください、私はあなたの助けを必要としています。そして、私に知らせてください。コード全体をそのまま使用してください。私は数分で説明します。初挑戦。

$target = "upload/"; 
$nameF = ""; 

$targetImage = "upload/"; 
$nameI = ""; 

$flag = 1; 

if (!empty($_FILES['fileUP']['name'])) { 
    print_r("ce il file"); 
    $target = $target . basename($_FILES['fileUP']['name']); 
    $nameF =$_FILES['fileUP']['name']; 
    if (!move_uploaded_file($_FILES['fileUP']['tmp_name'], $target)) { 
     $flag = -1; 
    } 
} 

if (!empty($_FILES['imageUP']['name'])) { 
    $targetImage = $targetImage . basename($_FILES['imageUP']['name']); 
    $nameI =$_FILES['imageUP']['name']; 
    if (!move_uploaded_file($_FILES['imageUP']['tmp_name'], $targetImage)) { 
     $flag = -1; 
    } 
} 

$title = $_POST['title']; 
$admin = $_POST['admin']; 
$content = $_POST['content']; 

$sql = "INSERT INTO news (title,admin,content,img,file) values('$title','$admin','$content','$nameI','$nameF')"; 
$result = $conn->query($sql) or die(mysql_error()); 

if ($result === TRUE) { 
    $flag = 1; 
} 
else { 
    $flag = -1; 
} 

if($flag == -1){ 
    echo -1; 
} else { 
    echo 1; 
} 
関連する問題