我正在尝试制作一个像Monsta FTP这样的网络 ftp 浏览器。目前我正在尝试制作一个函数,将当前目录切换到我点击的目录。这是它目前的样子:PHP(index.php):<?phpif(isset($_POST['file_name'])) { $file_name = $_POST['file_name']; ftp_chdir($ftp_conn, $file_name); echo "<p>".ftp_pwd($ftp_conn)."<p>";}// connect to the FTP server$ftp_server = "xxxxxxxxx";$ftp_username = "xxxxxxxxx";$ftp_userpass = "xxxxxxxxx";$ftp_conn = ftp_connect($ftp_server, 21) or die("Could not connect to $ftp_server");if ($ftp_conn === false) { echo "Unable connect to the ftp server.<br>";} else { echo "Succesfully connected to the ftp server.<br>";}//login to the FTP server$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);if ($login === true) { echo "Succesfully logged in to the ftp server.";} else { echo "Unable to log in to the ftp server.";}//get a list of all files and folders$contents = ftp_nlist($ftp_conn, '/');echo "<ul>";for ($i = 0 ; $i < count($contents) ; $i++) { echo "<li><a href=\"#\" onclick=\"post(this.id);\" id=\"".$contents[$i]."\">".$contents[$i]."</a></li>";}echo "</ul>";// close connectionftp_close($ftp_conn);?><!DOCTYPE html><html><head> <title>FTP file menager</title></head><body><script src="js/jquery.js"></script><script src="js/functions.js"></script></body></html>JS(functions.js):function post(vally) { var name = vally; $.post('index.php', {file_name:name}, function(data) {}); console.log('posted');}当我单击带有文件夹名称的链接之一时,我会在控制台中“发布”这意味着 JQuery(我使用的是从jquery.com下载的 JQuery 3.2.1 )发布了数据,但我没有收到任何警报或来自 PHP 的回声。我尝试if ()在建立与 ftp 服务器的连接之前和之后放置,但我仍然没有得到任何结果。有没有人知道为什么我的代码不起作用?
1 回答
吃鸡游戏
TA贡献1829条经验 获得超7个赞
尝试删除,ftp_close($ftp_conn);
因为它会在 js 加载之前关闭 ftp 连接,因此 php 无法再执行 ftp 命令,除非您在isset()
.
- 1 回答
- 0 关注
- 175 浏览
添加回答
举报
0/150
提交
取消