[PHP] Accesso ad un file specifico solo in base al server assegnato

Discussione in 'PHP' iniziata da Coby, 23 Agosto 2018.

  1. Coby

    Coby Nuovo Utente

    Registrato:
    28 Luglio 2018
    Messaggi:
    39
    Mi Piace Ricevuti:
    1
    Punteggio:
    8
    Ciao a tutti intanto grazie di esistere!!!
    Se guardate bene lo script io voglio far in modo che ogni User in base al server assegnato possa aver accesso ad un file specifico proprio in base al server che ha,come potrei fare?
    Grazie.
    PHP:
    <script src="SpryAssets/SpryCollapsiblePanel.js" type="text/javascript"></script>
    <link href="SpryAssets/SpryCollapsiblePanel.css" rel="stylesheet" type="text/css">

             <div id="CollapsiblePanel1" class="CollapsiblePanel">
                  <div class="CollapsiblePanelTab" tabindex="0">
             <div class="card mb-3">
             <div class="card-header font-weight-bold">
              <i class=""></i>Servers disponibili</div></div></div>
              <div class="CollapsiblePanelContent">
            <div class="card-body">
              <div class="table-responsive">
                <form action="subreseller.php" method="post" id="tf"></form>                   
                <table class="table table-bordered table-hover" id="dataTable" width="100%" cellspacing="0">
                  <thead>
                    <tr>
                      <th>Nome Servers</th>
                      <th>Id Servers</th>
                    </tr>
                  </thead>           
                  <tfoot>
                  </tfoot>           
    <tbody>
        
        <?php    if (@$_SESSION['type'] != "") {
           
    $resultse mysqli_query($con"SELECT * FROM `servers` WHERE FIND_IN_SET(`id`,(SELECT GROUP_CONCAT( servers SEPARATOR ',') FROM `users` WHERE `name` = '$_SESSION[username]'))") or die(mysqli_error($con));
           while(
    $rowse mysqli_fetch_assoc($resultse)) {   
      
          
    $result1 mysqli_query($con"SELECT * FROM `ssh-".$rowse["id"]."` WHERE `creatoda` = '$_SESSION[username]' ") or die(mysqli_error($con));
                  
                
             while(
    $row1 mysqli_fetch_assoc($result1))
                 {   
                                    
              echo
    ' <form action="subreseller.php" method="post" id="f'.$rowse["id"].$row1["ssh"].'"></form>';
             }
        
             
    $rf "'";
                        echo
    '<td>'.$rowse["nome"].'</td>';
                          echo
    '<td>'.$rowse["id"].'</td>';
                   echo
    '</tr>';
                    }
                    
    ?>
    </tbody>
                </table>
            
              
            
                <table class="table table-bordered table-hover" width="100%" cellspacing="0">
                  <tbody>       
                  </tbody>
                </table>
              </div>
               </div>
    </div>
       <?php
        
    }
        
    ?>
     
        </div></div>
       <script type="text/javascript">
    <!--
    var CollapsiblePanel1 = new Spry.Widget.CollapsiblePanel("CollapsiblePanel1");
    //-->
       </script>
    grazie a tutti.
     
  2. Coby

    Coby Nuovo Utente

    Registrato:
    28 Luglio 2018
    Messaggi:
    39
    Mi Piace Ricevuti:
    1
    Punteggio:
    8
    allora ragazzi ho fatto un passo avanti
    ho creato una tabella nel db dove importo i miei file
    ecco il codice
    PHP:
    <?php
    // se è stato inviato il file...
    if(isset($_POST['invia']))
    {
        
    // se ci sono stati problemi nell'upload del file
        
    if(!isset($_FILES['file_inviato']) OR $_FILES['file_inviato']['error'] != UPLOAD_ERR_OK)
        
    mostra_form("errore nell'invio del file. Riprova");

        
    // connessione e selezione del database
        
    mysql_connect('localhost''user''password')
        or die(
    'Connessione non riuscita: ' mysql_error());

        if(!
    mysql_select_db('panel'))
        die(
    'Selezione database fallita!');

        
    // recupero alcune informazioni sul file inviato
        
    $nome_file_temporaneo $_FILES['file_inviato']['tmp_name'];
        
    $nome_file_vero $_FILES['file_inviato']['name'];
        
    $tipo_file $_FILES['file_inviato']['type'];

        
    // leggo il contenuto del file
        
    $dati_file file_get_contents($nome_file_temporaneo);

        
    // preparo il contenuto del file per la query
        
    $dati_file addslashes($dati_file);

        
    // query per inserire il file nel DB
        
    $query "INSERT INTO tabella_files SET
                    nome_file = '
    $nome_file_vero',
                    tipo_file = '
    $tipo_file',
                    dati_file = '
    $dati_file'";

        
    mysql_query($query)
        OR die(
    'Query non valida: ' mysql_error());

        
    // mostro nuovamente il form ed un messaggio di successo
        
    mostra_form("Memorizzazione del file <b>$nome_file_vero</b> nel database eseguita correttamente.");
    }
    else
    {
        
    mostra_form();
    }

    /**
    * Mostra il form per l'upload del file
    *
    */
    function mostra_form($messaggio '')
    {
        
    ?>
      
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
        <title>Carica file nel database</title>
        </head>
      
        <p><?php echo $messaggio?> <br /> Seleziona un file da memorizzare nel database: <p></p>
        <form name="form1" enctype="multipart/form-data" method="post" action="">
        <p>
        <input type="file" name="file_inviato">
        <p></p>
        <p>
        <input type="submit" name="invia" value="Invia file">
        <p></p>
        </form>
      
      
        <?php
        
    exit();
    }
    ?>
    dopo tramite qesto codce riesco a prelevare il file che ho aggiunto
    PHP:
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Carica file nel database</title>
    </head>
     
    <p><b>Clicca su uno dei seguenti file</b><p><p></p>
    <?php
    // connessione e selezione del database
    mysql_connect('localhost''user''password')
    or die(
    'Connessione non riuscita: ' mysql_error());

    if(!
    mysql_select_db('panel'))
    die(
    'Selezione database fallita!');

    // query per ottenere l'elenco dei files nel DB
    $query "SELECT * FROM tabella_files";

    $risultato mysql_query($query)
    or die(
    'Query non valida: ' mysql_error());

    // se ci sono files nel DB
    if(mysql_numrows($risultato))
    {
        
    // estrazione dei risultati e stampa dei links ai files
        
    while ($tmp mysql_fetch_array($risultato))
        {
            echo 
    "<p><a href=\"mostra.php?id=$tmp[id_file]\">$tmp[nome_file]</a></p>\n";
        }
    }
    else
    {
        echo 
    '<p>Nessun file presente nel database</p>';
    }
    ?>
    bene mi funziona ma come posso fare in modo che in base all'utente ed al server assegnato (vedi primo codice primo post) far assegnare il file corretto col nome uguale al nome del server?
    grazie.
     
    Ultima modifica: 27 Agosto 2018
  3. Rikk73

    Rikk73 Utente Attivo

    Registrato:
    7 Aprile 2015
    Messaggi:
    133
    Mi Piace Ricevuti:
    6
    Punteggio:
    18
    Sesso:
    Maschio
    Occupazione:
    .NET Software Developer
    Località:
    Arezzo
    Se sei certo che i files hanno i nomi identici ai rispettivi server ti basta andare a cercare il file $_SERVER['SERVER_NAME'] . ".txt" (ad esempio), se c'è bene altrimenti.....
     
Sto caricando...

Condividi questa Pagina