Visualizzazione risultati 1 fino 3 di 3
Like Tree1Likes
  • 1 Post By mzanella

Discussione: Parse Error

  1. #1
    yodalessandra non è connesso Utente AlterBlog
    Data registrazione
    12-01-2021
    Messaggi
    3

    Predefinito Parse Error

    Salve a tutti. Sto cercando di creare una pagina di Registrazione / Login. Questo il codice php. Ricevo l'errore "Parse error: Unmatched '}' in C:\xampp\htdocs\test2\register.php on line 35.
    Non trovo l'errore. Qualcuno può aiutarmi? Grazie.

    P.S.: Uso Brackets come editor
    --------------------------------------------

    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>YodAlex_Login</title>
    <link rel="stylesheet" type="text/css" href="../css/yoda.css" />
    <script src="../js/jquery-1.6.4.min.js" type="text/javascript"></script>
    </head>
    <body>
    <div id="container">
    <?php
    if (!(isset($_POST['invia_dati']))) {
    ?>
    <form action="" method="post">
    Username: <input type="text" name="username" /><br />
    Password: <input type="password" name="pass1" /><br />
    Ripeti Password: <input type="password" name="pass2" /><br />
    E-Mail: <input type="submit" name="mail" /><br />
    <input type="submit" name="invia_dati" value="REGISTRATI" />
    </form>
    <?php
    } else {
    $username = $_POST['username'];
    $pass1 = $_POST['pass1'];
    $pass2 = $_POST['pass2'];
    $mail = $_POST['mail'];


    }

    if($username == "" || $pass1 == "" || $pass2 == "" || $mail == "") {
    echo "Devi compilare tutti i campi";
    } else if($pass1 != $pass2)
    echo "Le password devono coincidere";
    } else {
    mysql_connect("\localhost", "root", "root") or die(mysql_error());
    mysql_select_db("miei_utenti") or die(mysql_error());
    $query = mysql_query("INSERT into utenti" (username, password, email) VALUES ('$username', '$pass1', '$email')");
    if ($query)
    echo "Registrazione Effettuata" :<br /><a href='login.php'>ENTRA</a>";
    }
    ?>
    Ultima modifica di yodalessandra : 01-02-2021 alle ore 09.54.26

  2. #2
    GraphOGLRisorse è connesso ora AlterGuru
    Data registrazione
    14-02-2015
    Messaggi
    1,974

    Predefinito

    Salve,
    manca la parentesi di chiusura } relativa alla condizione else che inizia prima di:
    Codice PHP:
    $username $_POST['nome']; 
    Il supporto a php 5.x è cessato l'1 gennaio 2019, e con esso anche quello delle funzioni mysql. Per evitare problemi futuri d'incompatibilità con le versioni di php più recenti, è preferibile passare già a MySQLi o PDO.

    Cordiali saluti.
    Ultima modifica di GraphOGLRisorse : 31-01-2021 alle ore 14.40.26

  3. #3
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,880

    Predefinito

    A quanto detto da GraphOGLRisorse aggiungo che:

    Manca un ";" dopo questa istruzione:
    Codice PHP:
                    echo "Devi compilare tutti i campi" 
    Stai inserendo le password in chiaro nel database, è un rischio per la sicurezza e un problema rispetto al GDPR (REGOLAMENTO (UE) 2016/679). Usa funzioni come password_hash.

    Hai una moltiplicazione al posto di un assegnamento:
    Codice PHP:
                    $query mysql_query("INSERT into utenti" (usernamepasswordemailVALUES ('$username''$pass1''$email')"); 
    yodalessandra likes this.

    I suggerimenti che do più spesso:


Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •