Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 25
  1. #11
    Prese le funzioni anche queste dalla guida, testate tutte tranne le ultime 2 che al momento non mi occorrono, ora ve lo posto.
    Codice PHP:
    <?php
    class MysqlClass
    {
      
    // parametri per la connessione al database
      
    private $nomehost "localhost";
      private 
    $nomeuser "root";
      private 
    $password "";
      private 
    $nomedb "multimedia_casa";

      
    // controllo sulle connessioni attive
      
    private $attiva false;

      
    // funzione per la connessione a MySQL
      
    public function connetti()
      {

       if(!
    $this->attiva)
       {
        
    $connessione mysql_connect($this->nomehost,$this->nomeuser,$this->password);
        {
           
    // selezione del database
           
    $selezione mysql_select_db($this->nomedb,$connessione) or die (mysql_error());
          }

           }else{
            return 
    true;
           }
        }

    // funzione per la chiusura della connessione
    public function disconnetti()
    {
            if(
    $this->attiva)
            {
                    if(
    mysql_close())
                    {
             
    $this->attiva false;
                 return 
    true;
                 
                    }else{
                            return 
    false;
                    }
            }
     }

     
    //funzione per l'esecuzione delle query
    public function query($sql)
     {
      if(isset(
    $this->attiva))
      {
      
    $sql mysql_query($sql) or die (mysql_error());
      return 
    $sql;
      }else{
      return 
    false;
      }
     }

     
    //funzione per l'inserimento dei dati in tabella
        
    public function inserisci($t,$v,$r null)
        {
             if(isset(
    $this->attiva))
              {
                            
    $istruzione 'INSERT INTO '.$t;
                if(
    $r != null)
                {
                    
    $istruzione .= ' ('.$r.')';
                }

                for(
    $i 0$i count($v); $i++)
                {
                    if(
    is_string($v[$i]))
                        
    $v[$i] = '"'.$v[$i].'"';
                }
                
    $v implode(',',$v);
                
    $istruzione .= ' VALUES ('.$v.')';

                
    $query mysql_query($istruzione) or die (mysql_error());

                }else{
                    return 
    false;
                }
            }
            
    // funzione per l'estrazione dei record
    public function estrai($risultato)
     {
      if(isset(
    $this->attiva))
      {
      
    $r mysql_fetch_object($risultato);
      return 
    $r;
      }else{
      return 
    false;
      }
     }

    }


    ?>

  2. #12
    Ahh ecco, ci ho messo un po' ad arrivarci. Regola numero uno: MAI USARE GLI SHORT OPEN TAGS. Visto quanti casini creano?

    Metti <?php invece di <? prima di chiudere l'ultima graffa in fondo al primo file.

  3. #13
    Originariamente inviato da k.b
    Ahh ecco, ci ho messo un po' ad arrivarci. Regola numero uno: MAI USARE GLI SHORT OPEN TAGS. Visto quanti casini creano?

    Metti <?php invece di <? prima di chiudere l'ultima graffa in fondo al primo file.
    sei un GRANDE!!! lo guardato storto per mezz'ora prima ma non lo mai cambiato!!! 3 ore perse per un php!!

    Ora però ho questo errore

    Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\xampp\htdocs\Progetto\Home.php:8) in C:\xampp\htdocs\Progetto\Home.php on line 10

    E se poi testo la pagine mettendo l'username e password ho questo

    Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\Progetto\Home.php:8) in C:\xampp\htdocs\Progetto\Home.php on line 47

    Sapete spiegarmeli?? Perchè il session_star() è la prima volta che lo uso

  4. #14
    Metti il session_start() all'inizio del file. Intendo proprio all'inizio, prima del doctype.

    E comunque "l'ho guardato storto" e "non l'ho mai cambiato", almeno la grammatica di base

  5. #15
    Originariamente inviato da k.b
    Metti il session_start() all'inizio del file. Intendo proprio all'inizio, prima del doctype.

    E comunque "l'ho guardato storto" e "non l'ho mai cambiato", almeno la grammatica di base
    Ma intendi prorpio fuori da tutto anche dall'<html>??

    HOT
    Lo so!! è stata l'emozione del momento unità alla fretta!
    FINE HOT

  6. #16
    Quale parte di "prima del doctype" non era chiara?

  7. #17
    ok fatto ora quando carico non mi da più errori, ma se provo a mettere username e password e fare invia mi da quest errore:

    Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\Progetto\Home.php:15) in C:\xampp\htdocs\Progetto\Home.php on line 50

    Ho creato altri 2 file di prova, index1 e index2 per vedere se le operazioni hanno successo o meno.

    Index1 sbagliato
    index2 corretto

    Sono quelli che si leggono nel file php. Così magari la lettura è più chiara. Il file Home è quello con all'interno il cosice e da dove si dovrà effetuare il Login.

  8. #18
    Originariamente inviato da k.b
    Quale parte di "prima del doctype" non era chiara?
    Nessuna! vizzi di forma miei!

  9. #19

    Chiarimenti vari PHP

    Mi sono accorto anche di un altra cosa, Io in pratica avrei una pagina principale con il Login e poi a seconda se insersco user o admin 2 pagine diverse.
    Se non leggo male, questo passaggio è pensato in modo che ci sia una sola pagina a cui essere reindirizzati

    Codice PHP:
          if(mysql_num_rows($auth)==0)
        {
            
    // reindirizzamento alla homepage in caso di insuccesso
              
    header("Location: Home.php");
        }else{
              
    // chiamata alla funzione per l'estrazione dei dati
          
    $res =  $data->estrai($auth);
              
    // creazione del valore di sessione
          
    $_SESSION['login'] = $res-> id_login;
              
    // disconnessione da MySQL
              
    $data->disconnetti();
            
    // reindirizzamento alla pagina di amministrazione in caso di successo
              
    header("Location: Index2.php");
        } 
    Giusto?

    nel database in cui ho la tabella Login admin ha come id 1 mentre user ha id 2. l'id 0 viene confrontato con $auth, ma non ne capisco il motovo se non esiste

  10. #20
    Quel pezzo di codice controlla solo se un utente ha dato credenziali corrette: se si viene mandato a Index2.php, altrimenti viene mandato a Home.php; non ci sono distinzioni tra utenti "normali" o admin.

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.