2016-06-25 2 views
1

Я загрузил скрипт загрузки изображения с Ajax из этого LinkПоказать ссылку на файл после загрузки

Коды:

index.php

<script language="javascript" type="text/javascript"> 
<!-- 
function startUpload(){ 
     document.getElementById('f1_upload_process').style.visibility = 'visible'; 
     document.getElementById('f1_upload_form').style.visibility = 'hidden'; 
     return true; 
} 

function stopUpload(success, str){ 
     var result = ''; 
     if (success == 1){ 
     result = '<span class="msg">The file was uploaded successfully!<\/span><br/><br/>'; 
     } 
     else { 
     result = '<span class="emsg">There was an error during file upload!<\/span><br/><br/>'; 
     } 
     document.getElementById('f1_upload_process').style.visibility = 'hidden'; 
     document.getElementById('f1_upload_form').innerHTML = result + str+'<label>File: <input name="myfile" type="file" size="30" /><\/label><label><input type="submit" name="submitBtn" class="sbtn" value="Upload" /><\/label>'; 
     document.getElementById('f1_upload_form').style.visibility = 'visible';  
     return true; 
} 
//--> 
</script> 
</head> 

<body> 
     <div id="container"> 
      <div id="header"><div id="header_left"></div> 
      <div id="header_main">Max's AJAX File Uploader</div><div id="header_right"></div></div> 
      <div id="content"> 
       <form action="upload.php" method="post" enctype="multipart/form-data" target="upload_target" onsubmit="startUpload();" > 
        <p id="f1_upload_process">Loading...<br/><img src="loader.gif" /><br/></p> 
        <p id="f1_upload_form" align="center"><br/> 
         <label>File: 
           <input name="myfile" type="file" size="30" /> 
         </label> 
         <label> 
          <input type="submit" name="submitBtn" class="sbtn" value="Upload" /> 
         </label> 
        </p> 

        <iframe id="upload_target" name="upload_target" src="#" style="width:0;height:0;border:0px solid #fff;"></iframe> 
       </form> 
      </div> 
      <div id="footer"><a href="http://www.ajaxf1.com" target="_blank">Powered by AJAX F1</a></div> 
     </div> 

</body> 

Uploader.php

<?php 
     // Edit upload location here 
     $destination_path = getcwd().DIRECTORY_SEPARATOR; 

     $result = 0; 

     $target_path = $destination_path . basename($_FILES['myfile']['name']); 

     if(@move_uploaded_file($_FILES['myfile']['tmp_name'], $target_path)) { 
      $result = 1; 
     // echo $target_path; 
     } 

     sleep(1); 
    ?> 

    <script language="javascript" type="text/javascript">window.top.window.stopUpload(<?php echo $result.",".$target_path; ?>);</script> 

Я хочу показать URL загруженного изображения. Чтобы его можно было использовать мгновенно. У меня есть немного знаний о аджексе. Я попытался написать два трёх кода, но он не работает.

Любой может помочь показать файл url. Спасибо заранее.

ответ

1

Надеется, что это помогает ... index.php

<html> 
<head> 
     <script src="js/jquery-2.1.4.min.js"></script> 
     <script src="js/bootstrap.min.js"></script> 
</head> 

<body> 
<script language="javascript" type="text/javascript"> 
<!-- 
function startUpload(){ 

     document.getElementById('f1_upload_process').style.visibility = 'visible'; 
     document.getElementById('f1_upload_form').style.visibility = 'hidden'; 
     return true; 
} 

function stopUpload(success, str, filename){ 
     var result = ''; 
     var file_link = ''; 

     var location = window.location.href; 
     var directoryPath = location.substring(0, location.lastIndexOf("/")+1); 

     if (success == 1){ 
     result = '<span class="msg">The file was uploaded successfully!<\/span><br/><br/>'; 
     file_link = "<br/><a href='"+directoryPath+"/"+filename +"'>"+filename+"</a><br/>"; 
     } 
     else { 
     result = '<span class="emsg">There was an error during file upload!<\/span><br/><br/>'; 
     } 
     document.getElementById('f1_upload_process').style.visibility = 'hidden'; 
     document.getElementById('f1_upload_form').innerHTML = result + file_link +'<br/><br/><label>File: <input name="myfile" type="file" size="30" /><\/label><label><input type="submit" name="submitBtn" class="sbtn" value="Upload" /><\/label>'; 
     document.getElementById('f1_upload_form').style.visibility = 'visible';  
     return true; 
} 
//--> 
</script> 
</head> 

<body> 
     <div id="container"> 
      <div id="header"><div id="header_left"></div> 
      <div id="header_main">Max's AJAX File Uploader</div><div id="header_right"></div></div> 
      <div id="content"> 
       <form action="ajax-uploader.php" method="post" enctype="multipart/form-data" target="upload_target" onsubmit="startUpload();" > 
        <p id="f1_upload_process">Loading...<br/><img src="loader.gif" /><br/></p> 
        <p id="f1_upload_form" align="center"><br/> 
         <label>File: 
           <input name="myfile" type="file" size="30" /> 
         </label> 
         <label> 
          <input type="submit" name="submitBtn" class="sbtn" value="Upload" /> 
         </label> 
        </p> 

        <iframe id="upload_target" name="upload_target" src="#" style="width:0;height:0;border:0px solid #fff;"></iframe> 
       </form> 
      </div> 
      <div id="footer"><a href="http://www.ajaxf1.com" target="_blank">Powered by AJAX F1</a></div> 
     </div> 

</body> 
    </body> 
</html> 

Ajax-uploader.php

<?php 
    // Edit upload location here 
    $destination_path = getcwd().DIRECTORY_SEPARATOR; 

    $result = 0; 

    $target_path = $destination_path . basename($_FILES['myfile']['name']); 
    $actual_name = basename($_FILES['myfile']['name']); 

    if(@move_uploaded_file($_FILES['myfile']['tmp_name'], $target_path)) { 
     $result = 1; 
    // echo $target_path; 
    } 

    sleep(1); 
?> 

<script language="javascript" type="text/javascript">window.top.stopUpload(<?php echo "$result, '$target_path','$actual_name' "; ?>);</script> 
+0

Спасибо, это работает. – Sudarshan

0

изменения Uploader.php к upload.php.

Добавьте код PHP после сна следующим образом ..

sleep(1); 
    $target_path = str_replace('\\', '/', $target_path); 
    $spath = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI'])."/".$_FILES['myfile']['name']; 

?> 

<script language="javascript" type="text/javascript">window.top.window.stopUpload(<?php echo "'".$result."','".$target_path.',img url :'.$spath."'";?>);</script> 
+0

Извините, не работая для меня после добавления этих строк. – Sudarshan

+0

Откройте консоль и проверьте, какая ошибка отображается? –

+0

Не отображается ошибка. – Sudarshan

Смежные вопросы