Visualizzazione risultati 1 fino 9 di 9

Discussione: sessioni e operazioni con i file

  1. #1
    Guest

    Predefinito sessioni e operazioni con i file

    ciao a tutti spero possiate darmi una mano... allora in locale ho creato un sito dove ognuno registrandosi puo' caricare e scaricare dei piccoli file.
    ho utilizzato le sessioni e le funzioni per l' utilizzo dei file....

    in locale funziona tutto a meraviglia...mentre su AV non funziona nulla...

    ovvero
    quando creo la cartella con il codice:

    $cd=mkdir("../cartuse/$cartella","0777"); mi crea la cartella dell' utente
    e in teoria con questi permessi posso fare tutto (UP DW ecc...) giusto??

    la domanda è se in locale funziona come mai quando tento di fare l' up del file mi dice che non ho i permessi??? ecco il codice per l' up
    Codice PHP:
    <?
    session_start
    ();
    if(!isset(
    $_SESSION['nome']))header("Location:index.php");
    if(
    $_SESSION['up']==0)header("Location:index.php");
    /*$TMPDIR="temp";
    $filename=$HTTP_POST_FILES['miofile']['tmp_name'];
    $realname=$HTTP_POST_FILES['miofile']['name'];
    */
    // QUESTE RIGHE RENDONO LO SCRIPT COMPATIBILE CON LE VERSIONI
    // DI PHP PRECEDENTI ALLA 4.1.0
    if(!isset($_FILES)) $_FILES = $HTTP_POST_FILES;
    if(!isset(
    $_SERVER)) $_SERVER = $HTTP_SERVER_VARS;
    /********************* VARIABILI DA SETTARE ********************/
    // Directory dove salvare i files Uploadati ( chmod 777, percorso assoluto)
    $dn=$_SESSION['dn'];
    $upload_dir="cartuse/".$_SESSION['dn'];
    // Eventuale nuovo nome da dare al file uploadato
    $new_name = "";
    // Se $new_name è vuota, il nome sarà lo stesso del file uploadato
    $file_name = ($new_name) ? $new_name : $_FILES["upfile"]["name"];
    if(
    trim($_FILES["upfile"]["name"]) == "") {
    die(
    "Non hai indicato il file da uploadare !");
    }
    if(@
    is_uploaded_file($_FILES["upfile"]["tmp_name"])) {
    @
    move_uploaded_file($_FILES["upfile"]["tmp_name"], "$upload_dir/$file_name")
    or die(
    "Impossibile spostare il file, controlla l'esistenza o i permessi della directory dove fare l'upload.");
    }else{
    die(
    "Problemi nell'upload del file " . $_FILES["upfile"]["name"]);
    }
    header("Location:puc.php");
    ?>
    inoltre : nel pannello dove mostro i file ho questo codice :
    Codice PHP:
    <?
    if(($_SESSION['tipo']==7)&&($_SESSION['naviga']==1)){
    echo
    "<table class='file' width='250' cellspacing='0' cellpadding='0'>";
    echo
    "<tr><td width='100%'><h3><img src='service/cart.gif' border=0>Cartelle utenti presenti<br></td></tr>";

    if (
    $dir = @opendir("cartuse")) {
    while ((
    $tipo = readdir($dir)) !== false) {
    if(
    $tipo!="." AND $tipo!=".."){
    echo
    "</td><td>";
    $nomecart=str_decrypt($tipo,$key);
    echo
    "<a class='file2' href='service/navigatore.php?nca=$nomecart'>$nomecart</a>";
    echo
    "</td></tr>";
    }
    }
    }
    closedir($dir);
    echo
    "</table>";
    }
    ?>
    che dovrebbe mostrarmi tutte le cartelle presenti se si ha i permessi (si verifica con la sessione)

    il problema è che non visualizza nulla... in locale si...????

    HELP!!!!

  2. #2
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Leggi qui.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  3. #3
    Guest

    Predefinito

    ho provato ma non me va?

    ma scusa :

    che differenza fa con $upload_dir="cartuse"."/".$_SESSION['dn'];
    visto che comunque $upload_dir="cartuse/" è comunque una stringa alla quale concateno quella proveniente dalla sessione???

    Codice PHP:
    $upload_dir="cartuse/".$_SESSION['dn'];

    //sia

    $upload_dir="cartuse"."/".$_SESSION['dn'];
    il codice per la creazione della cartella è corretto???

    Codice PHP:
    $cd=mkdir("../cartuse/$cartella","0777");

    per il 2° quesito qualche idea???

    aiutateme.... devo farlo funzionare per forza....

  4. #4
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Ma io intendevo nell'upload...
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  5. #5
    Guest

    Predefinito

    ah scusa...
    cosi intendevi???
    Codice PHP:
    @move_uploaded_file($_FILES["upfile"]["tmp_name"],$upload_dir."/".$file_name)
    cmq nulla...

    nada....

    ti chiedo troppo se ti chiedo di riscrevermi tutta questa parte???

    EDIT:
    vi do anche il link dell' intero sito.... (è su mediafire quindi sicuro da virus) con tanto di db e dati da inserire... basta che lo facciate funzionare anche qui su AV.


    ecco il link file3

    dovete premere su Click here to start download..
    sono disperato.... avendo visto che in locale funziona tutto pensavo di aver finito e invece....

    Ricorda che nella sezione tecnica non è consentito fare up: usa il tasto EDITA per messaggi consecutivi.
    Ultima modifica di seneca : 20-03-2007 alle ore 00.55.12

  6. #6
    Guest

    Predefinito

    Fermo.
    Si possono impostare i 777 su AV??

    Non è che puoi al massimo dare 775 o 755 (non ricordo di preciso)?

  7. #7
    Guest

    Predefinito

    mi pare proprio di si... ho visto controllato in altre discussioni e mi pare proprio di si... un dubbio mi sorge.... per la creazione ho usato :

    Codice PHP:
    $cd=mkdir("../cartuse/$cartella","0777");

    non è che magari possa essere una di queste:

    Codice PHP:
    $cd=mkdir("../cartuse/$cartella","777");
    $cd=mkdir("../cartuse/$cartella","7777");
    dico io.. (magari ho detto na cretinata )

    lo zero davanti per cosa sta???

    prova a scaricarti il progetto completo e vedi il codice ...

  8. #8
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Citazione Originalmente inviato da JoErNanO
    Non è che puoi al massimo dare 775 o 755 (non ricordo di preciso)?
    Sì, dovrebbe essere 775.

    Visto che i permessi non sono obbligatori nella funzione mkdir potresti toglierli che tanto di default le cartelle e i file su AlterVista sono pienamente gestibili tramite PHP.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  9. #9
    Guest

    Predefinito

    nada de nada....

    forse ho capito quale possa essere il problema.... : le sessioni

    ad esempio nel primo mex ho chiesto anche per questo codice:

    Codice PHP:
    <?
    if(($_SESSION['tipo']==7)&&($_SESSION['naviga']==1)){
    echo
    "<table class='file' width='250' cellspacing='0' cellpadding='0'>";
    echo
    "<tr><td width='100%'><h3><img src='service/cart.gif' border=0>Cartelle utenti presenti<br></td></tr>";

    if (
    $dir = @opendir("cartuse")) {
    while ((
    $tipo = readdir($dir)) !== false) {
    if(
    $tipo!="." AND $tipo!=".."){
    echo
    "</td><td>";
    $nomecart=str_decrypt($tipo,$key);
    echo
    "<a class='file2' href='service/navigatore.php?nca=$nomecart'>$nomecart</a>";
    echo
    "</td></tr>";
    }
    }
    }
    closedir($dir);
    echo
    "</table>";
    }
    ?>
    e nonostante l' utente con cui entro si di tipo 7 e Naviga sia =1 non mi visualizza il codice (in locale si).... inoltre con questo codice:

    Codice PHP:
    ?>
    <a class="file" href="logoff.php">Esci</a> -
    <a class="file" href="puc.php">Aggiorna</a>
    <?
    if(($_SESSION['tipo']==7)&&($_SESSION['aam']==1)){
    echo
    "<a class='file' href='service/guva.php'>gestione utenti</a>";
    }
    ?>
    all' inizio mi compare la scritta Gestione utenti mentre quando vado su aggiorna non mi compare piu' che sia questo che blocchi tutto quanto e quindi anche l' upload????

    aiutateme !!!!

    scaricate (è sicuro) il sorgente e vedete pure voi cosa non va....


    EDIT: HO TROVATO L' ERRORE.... PRATICAMENTE LE VARIBILI DI SESSIONE VENIVANO CONFUSE CON LE VARIBILI LOCALI... AD ESEMPIO

    $dn=$_SESSION['dn']; risultava ambigua come per tutte le altre var di sessione che avevano una corrispondenza con una var locale....

    la soluzione è stata quindi quella di cambiare tutti i nomi della var di sessione..
    $dn=$_SESSION['sdn'];

    grazie per la collaborazione....
    (ps ho tolto il file per il dw quindi non provate a scaricarlo...)

    grazie ancora....


    FunCool: Non scrivere dei messaggi consecutivi, utilizza il tasto Edita.
    Ultima modifica di funcool : 21-03-2007 alle ore 10.58.40

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •