[PHP] syntax error, unexpected T_ELSE [era]urgentissimo]

ANDREA20

Utente Attivo
25 Giu 2016
145
1
18
27
ho un errore in questa pagina
http://www.civiaggio.it/login/functions.php
PHP:
<?php
#inclusione del file di configurazione
@include_once 'config.php';
# definizione della classe che conterrà i metodi per la gestione degli iscritti
class Iscrizioni {
  # definizione del costruttore
  public function __construct()
  {
    # istanza della classe per la connessione al database
    $data = new DATA_Class();
  }

  # metodo per la registrazione
  public function registra($nome_reale, $nome_utente, $password, $email)
  {
    # tolgo eventuali spazi vuoti
    $nome_reale = trim($nome_reale);
    $nome_utente = trim($nome_utente);
    $password = trim($password);
    # verifico che il modulo sia stato compilato
    if (strlen($nome_reale) == 0 || strlen($nome_utente) == 0 || strlen($password) == 0) return false
    else {
      # cifratura della password
      $password = @sha1($password);
      # confronto degli input con i dati contenuti in tabella
      $query = @mysql_query("SELECT id_utente FROM iscritti WHERE nome_utente = '$nome_utente' OR email = '$email'") or die('Errore: ' . mysql_error());
      # controllo sulla presenza di corrispondenze prodotte dal confronto
      $conta = @mysql_num_rows($query);
      # se il confronto non genera corrispondenze..
      if ($conta == 0)
      {
        # ..si procede con la registrazione..
        $risultato = @mysql_query("INSERT INTO iscritti(nome_utente, password, nome_reale, email) VALUES ('$nome_utente', '$password','$nome_reale','$email')") or die('Errore: ' .mysql_error());
        return $risultato;
      }else{
        # ..altrimenti l'esito della registrazione sarà negativo
        return false;
      }
    }
  }

  # metodo per l'autenticazione
  public function verifica_login($email_o_nome_utente, $password)
  {
    # cifratura della password
    $password = @sha1($password);
    # confronto degli input con i dati contenuti in tabella
    $query = @mysql_query("SELECT id_utente FROM iscritti WHERE (email = '$email_o_nome_utente' OR nome_utente='$email_o_nome_utente') AND password = '$password'") or die('Errore: ' . mysql_error());
    # controllo sulla presenza di una corrispondenza prodotta dal confronto
    $conta = @mysql_num_rows($query);
    # se il confronto genera una corrispondenza..
    if ($conta == 1)
    {
      # ..viene generata la sessione di login..
      $risultato = @mysql_fetch_object($query);
      $_SESSION['login'] = true;
      $_SESSION['id_utente'] = $risultato->id_utente;
      return TRUE;
    }else{
      # ..altrimenti l'esito dell'autenticazione sarà negativo
      return FALSE;
    }
  }

  # metodo per la visualizzazione del nome dell'utente loggato
  public function mostra_utente($id_utente)
  {
    # estrazione del nome reale sulla base dell'identificatore memorizzato in sessione
    $query = @mysql_query("SELECT nome_reale FROM iscritti WHERE id_utente = $id_utente") or die('Errore: ' . mysql_error());
    $risultato = @mysql_fetch_object($query);
    # stampa a video del nome reale dell'utente
    echo $risultato->nome_reale;
  }

  # metodo per il controllo sulla sessione
  public function verifica_sessione()
  {
    # il metodo restituisce l'informazione relativa alla sessione a patto che questa sia stata inizializzata
    if(isset($_SESSION['login']))
    {
      return $_SESSION['login'];
    }else{
      return FALSE;
    }
  }
  # metodo per il logout
  # la sessione viene distrutta a seguito di uno specifico input dell'utente
  public function esci() {
    $_SESSION['login'] = FALSE;
    @session_destroy();
    }
  }


public function __construct()
{
  $data = new DATA_Class();
}

public function registra($nome_reale, $nome_utente, $password, $email)
{
  $nome_reale = trim($nome_reale);
  $nome_utente = trim($nome_utente);
  $password = trim($password);
  if (strlen($nome_reale) == 0 || strlen($nome_utente) == 0 || strlen($password) == 0) return false
}else {
    $password = @sha1($password);
    $query = @mysql_query("SELECT id_utente FROM iscritti WHERE nome_utente = '$nome_utente' OR email = '$email'") or die('Errore: ' . mysql_error());
    $conta = @mysql_num_rows($query);
    if ($conta == 0)
    {
      $risultato = @mysql_query("INSERT INTO iscritti(nome_utente, password, nome_reale, email) VALUES ('$nome_utente', '$password','$nome_reale','$email')") or die('Errore: ' .mysql_error());
      return $risultato;
    }else{
      return false;
    }
  }
}


public function verifica_login($email_o_nome_utente, $password)
{
  $password = @sha1($password);
  $query = @mysql_query("SELECT id_utente FROM iscritti WHERE (email = '$email_o_nome_utente' OR nome_utente='$email_o_nome_utente') AND password = '$password'") or die('Errore: ' . mysql_error());
  $conta = @mysql_num_rows($query);
  if ($conta == 1)
  {
    $risultato = @mysql_fetch_object($query);
    $_SESSION['login'] = true;
    $_SESSION['id_utente'] = $risultato->id_utente;
    return TRUE;
  }else{
    return FALSE;
  }
}

public function mostra_utente($id_utente)
{
  $query = @mysql_query("SELECT nome_reale FROM iscritti WHERE id_utente = $id_utente") or die('Errore: ' . mysql_error());
  $risultato = @mysql_fetch_object($query);
  echo $risultato->nome_reale;
}


public function verifica_sessione()
{
  if(isset($_SESSION['login']))
  {
    return $_SESSION['login'];
  }else{
    return FALSE;
  }
}

public function esci()
{
  $_SESSION['login'] = FALSE;
  @session_destroy();
  }
}


#metodo per la visualizzazione del nome utente
public function mostra_username($id_utente)
{
  # estrazione del dato sulla base dell'identificativo univoco memorizzato in sessione
  $query = @mysql_query("SELECT nome_utente FROM iscritti WHERE id_utente = $id_utente") or die(mysql_error());
  $risultato = mysql_fetch_object($query);
  # stampa a video del risultato
  echo $risultato->nome_utente;
}

?>
 
Ultima modifica di un moderatore:
dai una letta al regolamento, è vietato aprire discussioni con titoli generici tipo aiuto o urgente.
racchiudi il codice che posti tra i tag presenti per la formattazione

l'errore "syntax error, unexpected 'else' (T_ELSE)" vuol dire errore di sintassi, ti sei dimenticato di chiudere una parentesi graffa
 
non ho risocontratto nessuna parentesi graffa non chiusa
 
Ultima modifica di un moderatore:
te lo dice anche il messaggio : riga 23
Codice:
else {
non c'entra apri la parentesi e non la chiudi
non postare tutto il codice uguale ogni volta e cerca di racchiuderlo nei tag per formattare il codice php
 
devi solo cancellare la riga 23 dove c'è scritto
else {
 
si in effetti ci sono più errori devi ricontrollarlo da capo.
 
a me sembra che hai incollato due volte i metodi della classe, cancella tutto da riga 97 in giu da quando ripeti il costruttore
public function __construct()
 
posta il link sono sicuro che l'hai copiato male
 
nel file dell'articolo manca il punto e virgola alla linea 23 dopo return false
quello che ha postato ru all'inizio di questa discussione è lungo il doppio devi aver incollato due volte
 

Discussioni simili