如何解决此字符串文字错误


How to solve this string literal error

下面的代码给了我一个未终止的字符串文字错误,如何修复?

下面是JavaScript代码(QandAtable.php)。

$(".imageCancel").on("click", function(event) {
    var image_file_name = "<?php echo str_replace("'n", "", $image_file_name); ?>";
                  $('.upload_target').get(0).contentwindow
              $("iframe[name='upload_target']").attr("src", "javascript:'<html></html>'");
    jQuery.ajax("cancelimage.php" + image_file_name)
        .done(function(data) {
        $(".imagemsg" + _cancelimagecounter).html(data);
    });
    return stopImageUpload();
}); 

下面是 ImageCancel.php ajax 链接到的脚本:

...
    $image_file_name = $_GET["fileImage"]["name"];
        echo "File Upload was Canceled";
            $imagecancelsql = "DELETE FROM Image 
            WHERE ImageFile = 'ImageFiles/". mysql_real_escape_string($image_file_name)."'";
        mysql_query($imagecancelsql);

在错误控制台中,它显示为:var image_file_name = "<br />

试试这个,不用担心内部的双引号,它不会影响你的javascript字符串

var image_file_name = "<?php echo str_replace("'n", "", $image_file_name); ?>";

我怀疑我是否正确回答了您的问题,但是您的代码中几乎没有问题。

当您使用 $_GET 时,我想您做错了$_GET["fileImage"]["name"]因为它是 GET 参数,所以只会$_GET["fileImage"]

但即使在这样做之前,您也应该以正确的 $_GET 参数发送它,即

jQuery.ajax("cancelimage.php?fileImage=" + image_file_name)