gpt4 book ai didi

javascript - 使用 $.post 调用 Web 服务 PHP 函数验证 javascript 页面中的目录

转载 作者:行者123 更新时间:2023-12-03 11:44:41 25 4
gpt4 key购买 nike

我尝试使用 $.post 函数来测试(通过调用 PHP 函数“is_dir”的 Web 服务)服务器上是否已存在文件夹,但没有成功,然后我希望它返回字符串或 bool 值返回我的 javascript 页面,然后继续动态编写将放置在那里的新文件。要测试的文件夹的文件路径是使用捕获表单数据的 jQuery“构建”的。我需要(在变量中)定义目录是否存在,然后能够从 $.post 函数外部(而不是从内部,使用成功回调)访问该变量。这样我就可以在 JavaScript 中进行如下操作:

如果{目录存在}则 捕获更多表单数据(通过 jQuery)和 $.post到调用PHP更新数据库的web服务

在 $.post 函数之外,我的返回变量的值未定义。

我想我可能把这个问题过于复杂化了。有什么建议么?提前谢谢您。

最佳答案

请参阅上面我对@Steve 的评论:

   <script type='text/javascript'>

//function gathers form data, validates constructed file path and then writes to DB
function post_FormData() {

var week_number = $("#form_week_number").val();
var program = $("#form_program").val();
var course = $.trim($("#form_course_number").val());
var form_content_type = $("input:radio[name=content_type]:checked").val();
var content_type = "";
var activity_title_Val = $.trim($("#form_activity_name").val());
var activity_title_Split = activity_title_Val.split(" ");
var activity_title_Clean = new Array();

//this for-loop constructs a valid directory folder name from form data
for(var i=0, l=activity_title_Split.length; i<l; i++) {

activity_title_Split[i] = activity_title_Split[i].replace(/[^a-z0-9\s]/gi,"");
activity_title_Clean[i] = activity_title_Split[i];
activity_title_Split[i] = activity_title_Split[i].replace(/\b[a-z]/g, function(letter){return letter.toUpperCase();});
}

var activity_title = activity_title_Split.join("");

var file_path = "";

file_path += "/CourseFiles/" + program + "/" + program + course + "/" + content_type + "/Week" + week_number + "/activity-" + activity_title;

var message = "<div id=\"confirmation_container_contents\"><p><b>Confirm Content Repository file path: </b><br></p>";

//begin web service call to PHP function
$.post('webservices/create_PA_webservices.php', {web_service: "go_check_if_exists", data_file_path: file_path}, function(data){

var exists = data.does_exist; //json_encoded RESPONSE FROM ASYNC REQUEST

if(exists == "Y") {

message += file_path;
message += "<br><br><br><center><b>An activity folder with this name already exists.</b></center>";
message += "<br><br><center>Please edit the activity title and resubmit.</center>";
message += "<br><br><br><center><input type=\"image\" src=\"pa_images/editButton.jpg\" id=\"editButton\" value=\"edit\"></center></div>";

$("#confirmation_container").empty();
$("#confirmation_container").append(message);

}
else if(exists == "N") {

message += file_path;
message += "<br><br><center><input type=\"image\" src=\"pa_images/editButton.jpg\" id=\"editButton\" value=\"edit\">";
message += "&nbsp\;&nbsp\;&nbsp\;<input type=\"image\" src=\"pa_images/confirmButton.jpg\" id=\"confirmButton\" value=\"confirm\"></center></div>";

$("#confirmation_container").empty();
$("#confirmation_container").append(message);

}

$(function(){//edit proposed file path

$("#editButton").click(function() {

$("#confirmation_container").empty();

});//end function edit path button

});//end anonymous function


$(function(){//confirm proposed file path and write to DB

$("#confirmButton").click(function() {

go_post_FormData(activity_title_Val, file_path, week_number, program, course, content_type);
$("#create_practice_activity").hide();
$("#build_practice_activity").show();
$("#activity_is_new").val("N");

});//end function confirm path button

});//end anonymous function


}, "json").fail(function() {alert("The go_check_if_exists webservice call has failed");}); //end web service call

}//end function post_FormData declaration

</script>

关于javascript - 使用 $.post 调用 Web 服务 PHP 函数验证 javascript 页面中的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26109152/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com