Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果未指定文件上载,则google应用程序脚本中出现错误_Javascript_Google App Engine_Google Apps Script - Fatal编程技术网

Javascript 如果未指定文件上载,则google应用程序脚本中出现错误

Javascript 如果未指定文件上载,则google应用程序脚本中出现错误,javascript,google-app-engine,google-apps-script,Javascript,Google App Engine,Google Apps Script,我想给用户上传文件的选项,但这并不是绝对必要的。如果没有指定文件,此脚本似乎会出现故障。我怎样才能解决这个问题?看起来它真正不喜欢的一行是:var file1=folder.createFile(blob1) 编辑:感谢您的建议,以下是我的最终结果(允许三个可选文件) 只需检查blob1是否为null,如果它是trhow异常。您就不能测试是否指定了名称吗?例如,添加一条if语句,检查名称是否为空。。。您可能还想测试斜杠之类的东西,以防用户试图创建子目录 我从中取消了null或empty的测试,但

我想给用户上传文件的选项,但这并不是绝对必要的。如果没有指定文件,此脚本似乎会出现故障。我怎样才能解决这个问题?看起来它真正不喜欢的一行是:var file1=folder.createFile(blob1)

编辑:感谢您的建议,以下是我的最终结果(允许三个可选文件)


只需检查
blob1
是否为
null
,如果它是trhow异常。

您就不能测试是否指定了名称吗?例如,添加一条if语句,检查名称是否为空。。。您可能还想测试斜杠之类的东西,以防用户试图创建子目录

我从中取消了null或empty的测试,但您可以自己滚动

function doGet(e) {
  return HtmlService.createHtmlOutputFromFile('form.html');
}

function uploadFiles(form) {

  try {

    var dropbox = "Student Files";
    var folder, folders = DriveApp.getFoldersByName(dropbox);

    if (folders.hasNext()) {
      folder = folders.next();
    } else {
      folder = DriveApp.createFolder(dropbox);
    }


    var id = "1L2syfAOm6MiYPtWuWwFZFK_ZtLpLOjNx9EpjHh2IKUY";            
    var ss = SpreadsheetApp.openById(id);


    var blob1 = form.myFile1;

    if( !isEmpty(blob1) ) {

       var file1 = folder.createFile(blob1);
       file1.setDescription("Uploaded by " + form.myName);
       var f1 = '=HYPERLINK("' + file1.getUrl() + '", "File 1")';


        Logger.log("test");

       var sheet = ss.getSheetByName('Sheet1');
       sheet.appendRow([form.myName, form.addy, form.twitter, form.status, form.what, form.projTitle, 
                     form.brief, form.full, form.role, form.date, form.website, f1]);


       return "Your entry was successfully uploaded!";

    } else {
        return "No file name specified!";
    }


  } catch (error) {

    return error.toString();
  }

}

// New stuff. A function that tests if a string is empty or null
function isEmpty(str) {
    return (!str || 0 === str.length);
}
function doGet(e) {
  return HtmlService.createHtmlOutputFromFile('form.html');
}

function uploadFiles(form) {

  try {

    var dropbox = "Student Files";
    var folder, folders = DriveApp.getFoldersByName(dropbox);

    if (folders.hasNext()) {
      folder = folders.next();
    } else {
      folder = DriveApp.createFolder(dropbox);
    }


    var id = "1L2syfAOm6MiYPtWuWwFZFK_ZtLpLOjNx9EpjHh2IKUY";            
    var ss = SpreadsheetApp.openById(id);

    var blob1 = form.myFile1;
    var blob2 = form.myFile2;
    var blob3 = form.myFile3;

    // check for empty blobs on file attachment uploads
    if( !isEmpty(blob1) ) {
      var file1 = folder.createFile(blob1);
      file1.setDescription("Uploaded by " + form.myName);
      var f1 = '=HYPERLINK("' + file1.getUrl() + '", "File 1")';
    } else {
      var f1 = "nada"; 
    }

    if( !isEmpty(blob2) ) {
      var file2 = folder.createFile(blob2);
      file2.setDescription("Uploaded by " + form.myName);
      var f2 = '=HYPERLINK("' + file2.getUrl() + '", "File 2")';
    } else {
      var f2 = "nada"; 
    }

    if( !isEmpty(blob3) ) {
      var file3 = folder.createFile(blob3);
      file3.setDescription("Uploaded by " + form.myName);
      var f3 = '=HYPERLINK("' + file3.getUrl() + '", "File 3")';
    } else {
      var f3 = "nada"; 
    }    

    Logger.log("test");

    var sheet = ss.getSheetByName('Sheet1');
    sheet.appendRow([form.myName, form.addy, form.twitter, form.status, form.what, form.projTitle, 
                     form.brief, form.full, form.role, form.date, form.website, f1, f2, f3]);


    return "Your entry was successfully uploaded!";



  } catch (error) {

    return error.toString();
  }

}

// New stuff. A function that tests if a string is empty or null
function isEmpty(str) {
    return (!str || 0 === str.length);
}
function doGet(e) {
  return HtmlService.createHtmlOutputFromFile('form.html');
}

function uploadFiles(form) {

  try {

    var dropbox = "Student Files";
    var folder, folders = DriveApp.getFoldersByName(dropbox);

    if (folders.hasNext()) {
      folder = folders.next();
    } else {
      folder = DriveApp.createFolder(dropbox);
    }


    var id = "1L2syfAOm6MiYPtWuWwFZFK_ZtLpLOjNx9EpjHh2IKUY";            
    var ss = SpreadsheetApp.openById(id);


    var blob1 = form.myFile1;

    if( !isEmpty(blob1) ) {

       var file1 = folder.createFile(blob1);
       file1.setDescription("Uploaded by " + form.myName);
       var f1 = '=HYPERLINK("' + file1.getUrl() + '", "File 1")';


        Logger.log("test");

       var sheet = ss.getSheetByName('Sheet1');
       sheet.appendRow([form.myName, form.addy, form.twitter, form.status, form.what, form.projTitle, 
                     form.brief, form.full, form.role, form.date, form.website, f1]);


       return "Your entry was successfully uploaded!";

    } else {
        return "No file name specified!";
    }


  } catch (error) {

    return error.toString();
  }

}

// New stuff. A function that tests if a string is empty or null
function isEmpty(str) {
    return (!str || 0 === str.length);
}