2012-05-12 2 views
0

Как я могу получить его так, что когда пользователь нажимает кнопку «Отмена», то в функции кнопки «Отмена», где она содержит переменную var image_file_name, она извлекает имя файла, который был введенный в файл ввода? Затем, надеюсь, метод $ GET на странице cancelimage.php можно использовать для извлечения имени файла из этой функции?Как получить имя файла

Ниже приведена моя попытка, но она не возвращает имя файла. Он просто извлекает пробел.

Ниже приведен код формы и функции Javascript, который контролирует кнопку "Отмена":

var $fileImage = $("<form action='imageupload.php' 
     method='post'enctype='multipart/form-data' target='upload_target' onsubmit='return 
     startImageUpload(this);' class='imageuploadform' ><label>" + 

"Image File: <input name='fileImage' type='file' class='fileImage' /></label><br/> 
<br/><label class='imagelbl'>" + 

"<input type='submit' name='submitImageBtn' class='sbtnimage' value='Upload'/> 
</label>" + 

"<input type='button' name='imageCancel' class='imageCancel' value='Cancel'/> 
</label>" + 

"<iframe class='upload_target' name='upload_target' src='#' style='width:0;height:0;border:0px;solid;#fff;'></iframe></form>") 

...

var _cancelimagecounter = cancelimagecounter; 


    $(".imageCancel").click(function() { 
    var image_file_name = <?php echo json_encode($image_file_name); ?>; 

    jQuery.ajax("cancelimage.php?fileImage=" + image_file_name) 
     .done(function(data) { 

     $(".imagemsg" + _cancelimagecounter).html(data); 
    }); 

    return stopImageUpload(); 

});  

Ниже cancelimage.php сценарий, где он использует $ GET метод для получения имени файла из var image_file_name:

<?php 

... 

$image_file_name = $_GET["fileImage"]; 

    echo "File Upload was Canceled"; 

     $imagecancelsql = "DELETE FROM Image 
     WHERE ImageFile = 'ImageFiles/". mysql_real_escape_string($image_file_name)."'"; 

    mysql_query($imagecancelsql); 

    mysql_close(); 


?> 
+0

Что вы пытаетесь сделать? Обычно, если вы отменили загрузку, в БД не должно быть изображения. – ubik

+0

@PedroFerreira Проблема заключается в том, что когда пользователь отменяет загрузку, имя все равно отображается в базе данных, когда оно должно быть; t be. Но причина, по которой он хранится в базе данных, заключается в том, что я сказал, что если нажать кнопку «Загрузить», вставьте имя файла в строку базы данных. Но я хочу, чтобы, если пользователь нажал кнопку «Отмена», удалите строку только что вставленного имени файла. Имеет ли это смысл? – user1394925

+0

@ bob-the-destroyer Когда файл отменен, я смог сделать это, чтобы файл не загружался на сервер. Проблема, о которой я говорю, упоминается в комментарии, который я написал выше. – user1394925

ответ

2

Имя файла - далека от того, подать в суде здесь .... Но ваш имя_файл не отображается, потому что вы пытаетесь использовать $_GET["fileImage"];

Форма была отправлена ​​через enctype='multipart/form-data и <input name='fileImage' type='file'

Вы должны использовать вместо $_FILES ...

Вашего имени файла будет

$image_file_name = $_FILES['fileImage']['name'] ; 
+0

спасибо за информацию, мне нужно что-либо изменить в функции кнопки отмены в коде javascript, или оставить ее как есть? – user1394925

+0

Вопрос в том, почему вы выставляете столько кода с JavaScript, когда можете просто скрыть или отобразить его – Baba

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