Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di danlupo
    Registrato dal
    Jul 2009
    Messaggi
    314

    FileManager (PHP + FTP + AJAX)

    Salve, sto tentando di creare un piccolo FileManager come da titolo.

    Prendo il contenuto di una cartella in un server FTP.
    Se è una cartella allora associo una classe ( fld )
    Genero un evento click su questa classe che mi dovrebbe , nelle intenzioni, ricaricare la pagina cambiando il valore della cartella di partenza.
    In pratica la cartella la recupererei dal valore di una variabile passata come POST (se è nulla allora prendo la ROOT) .
    Il problema è che non riesco a far funzionare l'evento ajax.

    Pensavo di fare così:

    Questa la parte JS
    codice:
      $(function() {
                    $('.fld').click(function() {
                        var folder = $(this).attr("rel");
                        $.ajax({
                            type: "POST",
                            data: "folder: " + folder
                        });
                    });
    
    
                });
    Questa la parte PHP

    codice:
     <?php
            if (isset($_POST['folder'])) {
                $fld = $_POST['folder'];
            } else {
                $fld = 'tester';
            }
            $ftp_server = '127.0.0.1';
            $ftp_username = 'xxx';
            $ftp_password = 'xxx';
            $conn_id = ftp_connect($ftp_server);
            if (@ftp_login($conn_id, $ftp_username, $ftp_password)) {
                $contents = ftp_nlist($conn_id, $fld);
    
    // output $contents
                echo "<ul>";
                foreach ($contents as $value) {
                    $value = str_ireplace('tester/', '', $value);
                    if (is_dir($value)) {
                        echo "[*]$value";
                    } else {
                        echo "[*]$value ";
                    }
                }
                echo "[/list]";
            } else {
                echo "could not connect as $ftp_username\n";
            }
            ?>
    L'evento Click funziona, perchè se faccio un alert della variabile folder funziona quindi, forse, non ho capito il funzionamento di ajax .

    Grazie Daniele
    Se rispondo ad una discussione è perchè so quello che dico ed ho voglia di rispondere, non per aumentare il contatore messaggi

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2010
    residenza
    Pianeta Terra
    Messaggi
    1,614
    Credo che nella parte ajax manca:

    codice:
    $(function() {
                    $('.fld').click(function() {
                        var folder = $(this).attr("rel");
                        $.ajax({
                           url: // percorso
                            type: "POST",
                            data: "folder: " + folder
                             success: // che succede poi ?
                        });
                    });
    
    
                });
    Per una bella risata vai QUI

  3. #3
    Utente di HTML.it L'avatar di danlupo
    Registrato dal
    Jul 2009
    Messaggi
    314
    Grazie, avevo messo giustamente url vuoto ma avevo sbagliato la funzione success..
    Se rispondo ad una discussione è perchè so quello che dico ed ho voglia di rispondere, non per aumentare il contatore messaggi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.