Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: Errore sintattico

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    11

    Errore sintattico

    Salve, ho un piccolo errore e devo risolverlo abbastanza velocemente quindi chiedo aiuto, sperando di poterlo risolvere velocemente!

    L'errore che mi da è il seguente:

    Codice PHP:
    Parse errorsyntax errorunexpected T_STRING in on line 101 
    Codice PHP:
    <?php  
    if(isset($_POST['submit'])) { 
    $connessione=mysql_connect()
    or die (
    "Non riesco a connettermi");  
    $db=mysql_select_db ();  
    if (!
    $db)  
    {  
     die (
    "Connessione al db fallita!".mysql_error());  
    }  
    $user=$_POST['user']; 
    $pass=$_POST['pass'];  
    $mail=$_POST['email'];  


    // Controlla che i campi siano stati riempiti tutti 
    if (empty($_POST['user'])) { echo "<div4>Non hai inserito l\'user!</div4>"; goto a; } 
    elseif (empty(
    $mail)) { echo "<div4>Non hai inserito l\'email</div4>!"; goto a; } 
    elseif (empty(
    $pass)) { echo "<div4>Non hai inserito la password!</div4>"; goto a; } 


    // Controlla se l'email è valida
    if (!filter_var($mailFILTER_VALIDATE_EMAIL)) { echo "<div4>L'email inserità non è valida!</div4>"; goto a; } 


    // Controlla se l'user è già presente 
    $username"SELECT * FROM utenti WHERE username = '$user'"
    $raw mysql_query($username); 
    //$row = mysql_fetch_array($raw); 
    if(mysql_num_rows($raw)>
    {echo 
    "<div4>Username gia esistente</div4>"; goto a;} 


    // Controlla se l'email è già presente 
    $email"SELECT *  FROM utenti WHERE mail = '$mail'"
    $raws mysql_query($email); 
    //$rows = mysql_fetch_array($raws); 
    if(mysql_num_rows($raws)>
    {echo 
    "<div4>Email già esistente</div4>"; goto a;} 


    // Controlla la lunghezza della password 
    $Password 6;
    $Password2 18;
    if(
    strlen($pass)<$Password&&strlen($pass)>$Password2)
    { echo 
    "<div4>La password non rispetta le restrizioni!</div4>"; goto a; }


    $_SESSION['mail']=$mail;


    //includiamo la classe PHPMailer
    require "phpmailer/class.phpmailer.php";


    //istanziamo la classe
    $messaggio = new PHPmailer();
    $messaggio->IsSMTP();
    $messaggio->Host='Host SMTP';


    //definiamo le intestazioni e il corpo del messaggio
    $messaggio->From='';
    $messaggio->AddAddress('$mail');
    $messaggio->AddReplyTo('info@mittente.it'); 
    $messaggio->Subject='Prova.';
    $messaggio->Body =stripslashes('Clicca qui per completare la registrazione: localhost/Test/Conferma_Registrazione.php'); 
    $messaggio->Body .=stripslashes('Le Ricordiamo che la sua password è $pass e che il suo username è $user'); 
    $messaggio->Body .=stripslashes('Grazie per essersi registrato al nostro sito!');  


    if(!
    $messaggio->Send()){ 
      echo 
    "<div4>E' avvenuto un errore, riprova.</div4>";
    }else{
      
    $risultato=mysql_query("INSERT INTO utenti (username,password,mail) VALUES ('$user', '$pass', '$mail')") or die(mysql_error());
      if(
    $risultato){ 
      echo 
    "<div4>Ti è stata inviata un email nella posta elettronica, clicca sul link per completare la registrazione!</div4>";}
    }


    //chiudiamo la connessione
    $messaggio->SmtpClose();
    unset(
    $messaggio);




    }


    a:


    $user=$_SESSION['user'];
         
    if (isset(
    $_SESSION['user']))
        { 
            echo(
    "<div5>Sei loggato, $user</div5>");
        }     
        else 
        { 
            echo(
    "<div5>Non sei loggato</div5>"); 
        } 


    ?>

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Non so quale sia la riga 101 (e faresti o avresti fatto meglio a dirlo), comunque, cos'è questo quella riga a: ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    11
    Codice PHP:
    // Controlla che i campi siano stati riempiti tutti 
    if (empty($_POST['user'])) { echo "<div4>Non hai inserito l\'user!</div4>"; goto a; } 
    elseif (empty(
    $mail)) { echo "<div4>Non hai inserito l\'email</div4>!"; goto a; } 
    elseif (empty(
    $pass)) { echo "<div4>Non hai inserito la password!</div4>"; goto a; } 
    Si hai ragione, preso dalla fretta l'ho dimenticato, è questa.

    Sarebbe un "goto to"

    Serve a saltare le istruzioni, è un comando obsoleto, dovrei sistemare un po tutto lo script in quanto è lungo e scritto maluccio però per ora mi basta che funzioni

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Oh Signore... GOTO?
    C'è ancora gente che lo usa???

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    11
    E' uno script che ho fatto un annetto fa ed adesso mi serve, come ti ho detto, devo sistemarlo tutto, è scritto male e vi sono varie righe di codice che si possono snellire, fatto sta che devo usarlo come tampone per una decina di giorni e di conseguenza dovrei capire qual'è il problema!

    Di solito quell'errore lo da quando la query non capisce dove iniziano le virgolette e quando finiscono per aprire un echo ad esempio, ma quella parte mi sembra scritta in modo corretto, idee?

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Boh, quel codice lì mi sembra a posto, comunque sono 3 righe di codice... qual è la riga 101?
    Guarda anche la 100, magari il problema è lì.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    11
    Sono la 100, 101 e 102... la questione è molto simpatica in quanto su locale andava tutto alla perfezione, una volta sul dominio mi è comparso questo simpatico problemuccio, mi sa che faccio prima a perdere una giornata a riscrivere il tutto!

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    11
    Ho sistemato tutta la parte di sopra risolvendo i vari problemi ed eliminando stringhe senza senso ed obsolete, adesso però mi rimanere un piccolo problema qui e visto che non ho mai usato la funzione PHPMailer ma ho sgraffignato questo codice non so molto bene come operare, mi da questo errore:

    Codice PHP:
    Parse errorsyntax errorunexpected T_STRINGexpecting ',' or ';' in 
    Codice PHP:
    include("includes/class.phpmailer.php"); // inclusione della classe PHPMailer
    $mittente="";
    $nomemittente="Conferma Registrazione";
    $destinatario="$mail";
    $ServerSMTP="";
    $corpo_messaggio=".";


    $msg=new PHPMailer;
    $msg->IsSMTP(); // Utilizzo della classe SMTP al posto del comando php mail()
    $msg->SMTPAuth=true// Autenticazione SMTP
    $msg->SMTPKeepAlive="true";
    $msg->Host=$ServerSMTP;
    $msg->Username=""// Nome utente SMTP autenticato
    $msg->Password=""// Password account email con SMTP autenticato


    $msg->From=;
    $msg->FromName=postmaster;
    $msg->AddAddress($mail); 
    $messaggio->Body =stripslashes('Clicca qui per completare la registrazione: Conferma_Registrazione.php'); 
    $messaggio->Body .=stripslashes('Le Ricordiamo che la sua password è \'.$pass.\' e che il suo username è \'.$user.\''); 
    $messaggio->Body .=stripslashes('Grazie per essersi registrato al nostro sito!');  
        if(!
    $msg->Send()) 
        {
        echo 
    '<div4>E' avvenuto un erroreriprova.</div4>';
        } // il rigo dell'
    errore
        
    else
        {
        
    $risultato=mysqli_query($connessione,"INSERT INTO utenti (username,password,mail) VALUES ('$user', '$pass', '$mail')") or die(mysql_error());
        }
        if(
    $risultato)
        { 
        echo 
    '<div4>Ti è stata inviata un email nella posta elettronica, clicca sul link per completare la registrazione!</div4>';
        } 

  9. #9
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Non hai notato la colorazione del punto in cui ti viene segnalato l'errore?
    Hai notato che l'accento della E' ti tronca la stringa?

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    11
    In questi momenti mi sento un idiota, ho guardato centinaia di volte il file correggendo tutte cose, e non lo avevo proprio visto!
    Peggio di quando mi sono dimenticato di mettere il punto interrogativo per aprire il php e mi son scervellato per una settimana!

    Grazie mille!

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.