Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Aiuto per Sessione

  1. #1

    Aiuto per Sessione

    Salve a tutti mi sto approcciando in questi giorni nel linguaggio PHP per creare un gestionale privato dove si accede solo tramite login personale con username e password.

    Smanettando qua e la ho creato un po tutto.

    • Database Mysql con tutti i campi necessari
    • Pagina Html con form per inserci i dati di accesso
    • File config.php che tiene i dati del mio database per accedervi
    • File Login.php che fa una verifica dei dati se positiva manda a una pagina X se errata da un messaggio di errore con un alert JS.


    Nono è stato facile ma dopo ore e ore di lettura ho portato a casa questo e sono soddisfatto.
    Purtroppo dalle guide anche di molti siti non riesco a capire come configurare corretamente una session perchè attualmente dalla www.miosito.it/home devo accedere e inserendo i dati mi porta a www.miosito.it/gestionale

    Devo fare in modo che ogni pagina di questo sito se uno tenta di entrare ci sia un blocco che riporti al login. Ho visto le cose delle Session ma per le mie conoscenze il linguaggio è un po' ostico.

    Qualcuno può darmi una mano?

    Vi metto quello che ho fatto

    Questa è la home (ho dovuto togliere alcune righe di riferimento)

    codice HTML:
    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Ge.Di.Ca. Gestionale Distaccamento </title>
    </head>
    <style>
        
        .logo {
            padding-top: 40px;    
            padding-bottom: 0px;    
        }
        
        .titolo {
            text-align: center;
            padding-bottom: 5px;
            font-family: "Myriad Pro";
            font-size: 250%;
            padding-top: 0px;
            margin-top: 0px;
            color: #778899;
                    
        }
        
        .gedica {
            text-align: center;
            font-family: "Myriad Pro";
            font-size: 200%;
            padding-top: 20px;
            margin-top: 0px;
            color: #778899;
                    
        }
    
        .etichetta {
            font-family: "Myriad Pro";
            color: #778899;
            font-size: 90%;        
            
        }
        
        input[type=text], select {
        width: 20%;
        padding: 12px 20px;
        margin: 8px 0;
        display: inline-block;
        border: 1px solid #CE2B37;
        border-radius: 4px;
        box-sizing: border-box;
        font-family: "Myriad Pro";
        text-align: center;
        }
            
        input[type=password], select {
        width: 20%;
        padding: 12px 20px;
        margin: 8px 0;
        display: inline-block;
        border: 1px solid #CE2B37;
        border-radius: 4px;
        box-sizing: border-box;
        font-family: "Myriad Pro";
        text-align: center;
            
        }
        
        input[type=text]:focus {
        background-color: #F0F0F0;
        }
        
        input[type=password]:focus {
        background-color: #F0F0F0;
    }
        
        input[type=submit] {
        width: 10%;
        background-color: #CE2B37;
        color: white;
        padding: 14px 20px;
        margin: 8px 0;
        border: none;
        border-radius: 4px;
        cursor: pointer;
        font-family: "Myriad Pro";
        font-size: 110%;
        }
        
        footer {
            background-color: #CE2B37;
            
        }
        
        .info {
            color: white;
            padding-top: 5px;
            padding-bottom: 15px;
            font-family: "Myriad Pro";
            
            
        }
            
        
    </style>
    
    
    <body>
    
    
    <div align="center">
    
    
    <div class="titolo">
        
    
        </div>
    
     <form action="login.php" method="post">
      <div class="etichetta">
         <p>Inserisci Utente e Password per effettuare l'accesso!</p>
          <input name="username" name="username" type="text" class="compilazione" placeholder="Inserisci qui la tua username"> <br>
        <br>
          <input name="password" name="password" type="password" class="compilazione" placeholder="Inserisci la tua password"><br>
         <br>
          <input value="ACCEDI" type="submit" class="login"> 
          
          <div class="gedica">
        
        </div>
         
         <footer class="info">
            
          </footer>
        </div>    
    </form>
    
    </body>
    </html>
    e questo è il login.php

    codice HTML:
    <html>
        
        
    <body>
        
    
    
    
    <?php
    
    include "config.php";
    
    //Ottengo i dati del form
    
    $username = $_POST['username'];
    $password = $_POST['password'];
    
    //Controllo esistenza
    
    $sql = "SELECT * FROM utenti WHERE username = '$username' and password = '$password'";
    $risultati = mysql_query($sql);
    $numero = mysql_num_rows($risultati);
    $message = 'Attenzione Username e Password non riconosciute!';
    
    //Notifica Login Fallito
    
    if ($numero > 0 ) {
        echo "Login effettuato con successo!";
        echo "<script> window.location.assign('gestionale.html'); </script>";
    } else {
        echo "<SCRIPT> alert('$message'); </SCRIPT>";
        echo "<script> window.location.assign('home.html'); </script>";
    }
    
    ?>
    
    
    </body>
    
    </html>

  2. #2
    nel file di config metti session_start(); come prima riga.

    poi puoi fare una cosa del tipo:
    Codice PHP:
    if ($numero ) {
        
    $_SESSION['QUALCOSA'] = TRUE;

    poi nelle tue pagine, controlli che sia settata $_SESSION['QUALCOSA'].

    PS: non usare le funzioni mysql_* che sono deprecate, ma usa PDO o myqli_*.

  3. #3
    allora ho provato a cambiare le stringhe in mysqli e non va piu na mazza non so come usare quelle stringhe...
    Ti incollo il codice per dirmi se ho fatto corretto

    Codice PHP:
    <?php
        
    include "config.php";

    //Ottengo i dati del form

    $username $_POST['username'];
    $password $_POST['password'];

    //Controllo esistenza

    $sql "SELECT * FROM utenti WHERE username = '$username' and password = '$password'";
    $risultati mysqli_query('$sql');
    $numero mysqli_num_rows($risultati);    
    $message 'Attenzione Username e Password non riconosciute!';

    //Notifica Login Fallito

    if ($numero ) {
        echo 
    "Login effettuato con successo!";
        echo 
    "<script> window.location.assign('gestionale.html'); </script>";
    } else {
        echo 
    "<SCRIPT> alert('$message'); </SCRIPT>";
        echo 
    "<script> window.location.assign('home.html'); </script>";
    }


        
    ?>
    Questo è il config per la connessione al DB

    Codice PHP:
    <?php
        $host_name  
    "midb.com";
        
    $database   "miodb";
        
    $user_name  "utente";
        
    $password   "password";


        
    $connect mysqli_connect($host_name$user_name$password$database);
        
    ?>
    non comunicano più, dove sbaglio?

  4. #4
    non uso mysqli, però non penso basti inserir una i.
    dovresti guardare sulla documentazione...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.