Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26
  1. #1

    login con due accessi differenti

    Ciao a tutti,
    ho creato questo codice php per una login con due password differenti
    codice:
    <?php
    
    	$login_password = array(
    		'4593eff8732426e9e67d6304ac0fea12fb9fc5d5',
    		'35b38ed93a1e82ab873255851ef385e8120de6f7'
    	);
    	//$pass = "wholalottalove";
    	//$pass_dinner = "pranzomatrimonio";
    	
    	$passform = sha1($_POST['password']);
    	
    	if($_POST['password'] == "")
    	{
    		header("Location: welcome.php");
    	}
    	elseif (in_array($passform, $login_password))
    	{
    		session_start();
    		$_SESSION['login'] = "ok";
    		switch ($login_password)
    		{
    			case 0:
    				$auth = "invitati";
    				break;
    			case 1:
    				$auth = "cena";
    				break;
    		}
    		header("Location: homepage.php");
    	}
    	else
    	{
    		header("Location: welcome.php");
    	}
    
    ?>
    e un file dove dovrebbe essere caricato un contenuto diverso a seconda della password inserita:
    codice:
    <?
    session_start();
    if ($_SESSION['login'] != "ok")
    {
    	header("Location: welcome.php");
    }
    
    ?>
    
                   <?php if ($auth == "invitati"){ ?>
                    <div>
                        contenuto 1
                	</div>
                    <?php } else { ?>
                    <div>
                       contenuto 2
                    </div>
                    <?php } ?>
    ma nel rendering della pagina mi dice che la variabile $auth non esiste... mi potete aiutarmi?
    Hutton

    "Una tela bianca, offre infinite possibilità."

  2. #2
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    GIà non ha tutti i torti ...

    ma usare 1 password + codice di controllo faceva schifo ?

    Scusa ma $auth non e' nulla, non la inizializzi da nessuna parte... quindi non esiste e come fa il server a gestire 1 cosa che non esiste ?

    Devi impostare correttamente tale variabile, quindi inzializzarla e solo dopo potrai usarla.

    ....

  3. #3
    mi conviene fare un array con chiave=> valore ?
    Hutton

    "Una tela bianca, offre infinite possibilità."

  4. #4
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    A- login .php

    array / database file testuale criuptato => come ti pare stipi i dati di accesso.

    1 username + 1 password + 1 codice di controllo.

    User e pwd li usi per eseguire login poi il codice di controllo lo utilizzi per abilitare l'utente ad eseguire operazione 1 oppure operazione 2.
    Non puoi pensare di applicare pwd differenti allo stesso account, io da user non posso ricordami 2-3-4-5 o quello che siane le pwd per 1 unico account....

    Dopo il controllo stipa in sessione i dati.


    B- controllo_accessi.php
    file che includi in ogni sottopagina, questo file php avvia lasessione e ne controlla i dati.
    quindi se il codice e' abilitato per la pagina che stai aprendo ok altrimenti redirezione a home page dell'account.

  5. #5
    $auth viene inizializzata nello script per la verifica della pass. Il problema è che in quel modo non te lo porti dietro. Dovresti inserirlo nell'array di sessione ($_SESSION['auth'] per comodità) come hai fatto con il login.
    Codice PHP:
    switch ($login_password)
            {
                case 
    0:
                    
    $_SESSION['auth'] = "invitati";
                    break;
                case 
    1:
                    
    $_SESSION['auth'] = "cena";
                    break; 
    A quel punto te lo porti dietro su ogni script e lo puoi usare richimandolo direttamente
    Codice PHP:
    <?php if ($_SESSION['auth'] == "invitati"){ ?>
    oppure
    Codice PHP:
    <?php 
    $auth 
    $_SESSION['auth'];
    if (
    $auth == "invitati"){ ?>
    Fare o non fare....non c'è provare!

  6. #6
    il problema è che non la porta dietro ugualmente...

    Notice: Undefined variable: _SESSION in C:\EasyPHP\www\wholalottalove\homepage.php
    Hutton

    "Una tela bianca, offre infinite possibilità."

  7. #7
    Originariamente inviato da hutton
    il problema è che non la porta dietro ugualmente...

    Notice: Undefined variable: _SESSION in C:\EasyPHP\www\wholalottalove\homepage.php
    Magari così $_SESSION va meglio.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  8. #8
    è scritto così
    Codice PHP:
    <?php if ($_SESSION['auth'] == "invitati"){ ?>
    ma non va ... non vorrei che essendoci anche questo controllo
    Codice PHP:
    if ($_SESSION['login'] != "ok")
    {
        
    header("Location: welcome.php");

    vada in conflitto qualcosa...
    Hutton

    "Una tela bianca, offre infinite possibilità."

  9. #9
    Hai messo il session_start() all'inizio dello script?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  10. #10

    Codice PHP:
    <?php
    session_start
    ();
    if (
    $_SESSION['login'] != "ok")
    {
        
    header("Location: welcome.php");
    }

    ?>
    <?php 
    if ($_SESSION['auth'] == "invitati"){ ?>
    <div>pippo</div>
    <?php } else { ?>
    <div>pluto</div>
    <?php ?>
    Hutton

    "Una tela bianca, offre infinite possibilità."

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.