【发布时间】:2018-08-03 04:25:52
【问题描述】:
我创建了一个页面,当加载该页面时,会将文件从一个文件夹移动到 ftp 服务器上的另一个文件夹。我想在完成后闪烁一条消息。但我正在使用 Session::flash 但它不起作用。如果我错了,请检查代码 sn-ps 并纠正我。文件正在正确移动。
test.blade.php
$(document).ready(function(){
$(window).load(function(){
$.ajax({
type: 'POST',
url: '{{url('/ftp')}}',
success: function(data) {
alert(data);
console.log(data);
}
});
});
});
TestController.php
function ftp()
{
$ftp_server;
$ftp_username;
$ftp_userpass;
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
// $login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);
if (@ftp_login($ftp_conn, $ftp_username, $ftp_userpass))
{
echo "Connection established.<br>";
$path = "./test";
$file = "ftp_test.txt";
$file_list = ftp_nlist($ftp_conn,$path);
if(in_array($file,$file_list))
{
$old_path="./test/ftp_test.txt.";
$new_path="./test1/ftp_test.txt";
if(ftp_rename($ftp_conn,$old_path,$new_path))
{
echo "File moved from $old_path to $new_path.<br>";
Session::flash('success','File moved from a to b');
}
else {
echo "File not moved.";
}
}
else
{
$old_path="./test1/ftp_test.txt.";
$new_path="./test/ftp_test.txt";
if(ftp_rename($ftp_conn,$old_path,$new_path))
{
echo "File moved from $old_path to $new_path.<br>";
Session::flash('success','File moved from b to a');
}
else {
echo "File not moved.";
}
}
}
else
{
echo "Couldn't establish a connection.<br>";
}
// close connection
ftp_close($ftp_conn);
}
}
任何帮助将不胜感激。谢谢。
【问题讨论】:
-
由于您使用 ajax 调用会话将无法正常工作,请使用 jquery 处理显示消息场景
-
@Kuru 你能帮我吗?
-
如果您使用的是 AJAX,则无需设置会话,只需回显该消息,您将在响应中收到该消息
-
@RajShah 检查答案
-
不会对您的问题有太大帮助,但是当使用
Session::flash()时,您需要在之后重定向到另一个页面并在刀片文件中的某处有代码以显示相应的警告、通知、错误等。