Visualizzazione risultati 1 fino 12 di 12

Discussione: errore nel register.php

  1. #1
    Guest

    Predefinito errore nel register.php

    salve, mi potete aiutare a capire come si corregge questo errore:
    Parse error: syntax error, unexpected '[' in /membri/squadranostra/register.php on line 11
    e poi c'è anche quest'altro in login.php che è identico:
    Parse error: syntax error, unexpected '[' in /membri/squadranostra/login.php on line 31 grazie in anticipo

  2. #2
    Guest

    Predefinito

    Dovresti postare i codici delle pagine, almeno le righe intorno alla riga dell'errore (solitamente questo errore è nella riga indicata o in quella prima). Così alla cieca direi che non hai chiuso una parentesi o qualcosa del genere prima di aprire una quadra, ma senza codice è impossibile capirlo.

  3. #3
    Guest

    Predefinito errore nel register.php e login.php

    Grazie per aver risposto, nel register.php:
    <?php

    include 'header.php';

    ?>

    <?php



    if (!isset ($_GET) ['passkey'])) {

    if (!isset ($_POST) ['invia'])) {?>

    <form metod="post" action="#" id="form registrazione"

    <label for="username">username</label>
    <imput type="text" name="username" id="username" /><br>
    <label for="password1">password</label>
    <imput type="text" name="password1" id="password1" /><br>
    <label for="password2">ripeti password</label>
    <imput type="text" name="password2" id="password2" /><br>
    <label for="email">email</label>
    <imput type="text" name="email" id="email" /><br>
    <imput type="submit name="invia" id="registrati= value="registrati" />
    </form>
    invece nel login.php:
    <?php


    ($username = mysql_real_escape_string ($_POST) ['username']);
    ($password = mysql_real_escape_string ($_POST) ['password']);

    if ($username == "" || $password == ""); {

    echo "attenzione devi compilare i campi"

    } else

    $password_cript = md5 ($password);

    $recuperadati = mysql_query("SELECT * FROM utenti WHERE username = '$username AND password = '$password_cript'");
    $verificadati = mysql_num_rows($recuperadati);

    if ($verificadati == 1) {

    $sessione mysql_fetch_array($recuperadati);
    $_session ['utente'] = $session ['username'];
    echo "login effettuato con successo";
    header("refresh : 2; URL=index.php");

    } else

    echo "dati non presenti nel database";

    }
    }


    //login.php? azione=logout
    }elseif ($p =="logout") {

    session_destroy ();
    echo "logout effettuato con successo";
    header("refresh: 2; URL=index.php");

    ?>
    grazie ancora

  4. #4
    Guest

    Predefinito errore nel register.php e login.php

    Grazie per aver risposto, nel register.php:
    <?php

    include 'header.php';

    ?>

    <?php



    if (!isset ($_GET) ['passkey'])) {

    if (!isset ($_POST) ['invia'])) {?>

    <form metod="post" action="#" id="form registrazione"

    <label for="username">username</label>
    <imput type="text" name="username" id="username" /><br>
    <label for="password1">password</label>
    <imput type="text" name="password1" id="password1" /><br>
    <label for="password2">ripeti password</label>
    <imput type="text" name="password2" id="password2" /><br>
    <label for="email">email</label>
    <imput type="text" name="email" id="email" /><br>
    <imput type="submit name="invia" id="registrati= value="registrati" />
    </form>
    invece nel login.php:
    <?php


    ($username = mysql_real_escape_string ($_POST) ['username']);
    ($password = mysql_real_escape_string ($_POST) ['password']);

    if ($username == "" || $password == ""); {

    echo "attenzione devi compilare i campi"

    } else

    $password_cript = md5 ($password);

    $recuperadati = mysql_query("SELECT * FROM utenti WHERE username = '$username AND password = '$password_cript'");
    $verificadati = mysql_num_rows($recuperadati);

    if ($verificadati == 1) {

    $sessione mysql_fetch_array($recuperadati);
    $_session ['utente'] = $session ['username'];
    echo "login effettuato con successo";
    header("refresh : 2; URL=index.php");

    } else

    echo "dati non presenti nel database";

    }
    }


    //login.php? azione=logout
    }elseif ($p =="logout") {

    session_destroy ();
    echo "logout effettuato con successo";
    header("refresh: 2; URL=index.php");

    ?>
    grazie ancora

  5. #5
    Guest

    Predefinito

    Non

    Codice PHP:
    if (!isset ($_GET) ['passkey']))
    ma

    Codice PHP:
    if (!isset $_GET['passkey'])
    e così via ...

    E non imput ma input.

  6. #6
    Guest

    Predefinito

    Oltre a ciò che ha detto simpleticket vorrei farti notare che in login.php hai chiuso delle graffe che non hai aperto e l'ultima non l'hai chiusa
    Codice PHP:
    <?php


    ($username = mysql_real_escape_string ($_POST) ['username']);
    (
    $password = mysql_real_escape_string ($_POST) ['password']);

    if (
    $username == "" || $password == ""); {

    echo
    "attenzione devi compilare i campi"

    } else { //questa

    $password_cript = md5 ($password);

    $recuperadati = mysql_query("SELECT * FROM utenti WHERE username = '$username AND password = '$password_cript'");
    $verificadati = mysql_num_rows($recuperadati);

    if (
    $verificadati == 1) {

    $sessione mysql_fetch_array($recuperadati);
    $_session ['utente'] = $session ['username'];
    echo
    "login effettuato con successo";
    header("refresh : 2; URL=index.php");

    } else {
    //questa

    echo "dati non presenti nel database";

    }
    }


    //login.php? azione=logout
    }elseif ($p =="logout") {

    session_destroy ();
    echo
    "logout effettuato con successo";
    header("refresh: 2; URL=index.php");
    }
    //questa
    ?>
    EDIT: ho notato ora che hai colorato di rosso le righe con l'errore (quindi l'if prima di }elseif ($p =="logout") { devi averlo omesso)
    Ultima modifica di orgxiiipu : 28-12-2012 alle ore 11.46.19

  7. #7
    Guest

    Predefinito errore nel register.php e login.php

    omettendo le parentesi tonde, adesso mi da questo errore:
    Parse error: syntax error, unexpected T_VARIABLE, expecting '(' in /membri/squadranostra/register.php on line 11
    invece nel login.php mi da sempre lo stesso errore alla riga 31 vi posto i due codici completi:
    <?php

    include 'header.php';

    ?>

    <?php



    if (!isset $_GET ['passkey']) {

    if (!isset $_POST ['invia']) {?>

    <form metod="post" action="#" id="form registrazione"

    <label for="username">username</label>
    <imput type="text" name="username" id="username" /><br>
    <label for="password1">password</label>
    <imput type="text" name="password1" id="password1" /><br>
    <label for="password2">ripeti password</label>
    <imput type="text" name="password2" id="password2" /><br>
    <label for="email">email</label>
    <imput type="text" name="email" id="email" /><br>
    <imput type="submit name="invia" id="registrati= value="registrati" />
    </form>

    <?php } else {
    //creazione codice di conferma
    $codice_conferma=md5(uniqid(rand()));
    //valori del form
    $username =mysql_real_escape_string($_POST['username']
    $password1 =mysql_real_escape_string($_POST['password1']
    $password2 =mysql_real_escape_string($_POST['password2']
    $email =mysql_real_escape_string($_POST['email']
    //controlli campi vuoti e password
    if ($username ==""| |$email =="") {
    echo "devi riempire tutti i campi";
    }elseif ($password1==""| |password2==""){
    echo "devi riempire tutti i campi";
    }elseif ($password2 != $password1) {
    echo "le password devono coincidere";
    }{else
    //inserisci i dati nel db_utenti_temp
    $recuperauseremail = mysql_query ("SELECT id FROM utenti WHERE username '$username' OR email '$email'");
    $contausermail = mysql_num_rows($recuperausermail)

    if ($contausermail > 0 ){
    echo "nome utente o email gia disponibili";
    }else{
    //invia dati al db utenti_tem
    $inviautentitemp = mysql_query ("INSERT utenti_temp (codiceconferma, username, password,email) VALUES ('$codiceconferma','$username','$password2','$emai l')");

    if ($inviautentitemp){

    $to=$email;
    $subject="conferma la registrazione";
    $header="da:amministratore";
    $message="ecco il tuo codice di attivazione\r\n";
    $message="clicca sul link per confermare la registrazione\r\n";
    $message="http://127.0.0.1/my_squadranostra/register.php?passkey=$codiceconferma";

    $sendmail="mail($to,$subject,$message,$header);
    }
    if ($sendmail){
    echo"per completare la registrazione controla la tua casella di posta elettronica e clicca sul link di attivazione";
    }{else
    echo="errore,link di attivazione non inviato";
    }
    }
    }
    }
    }else{

    $passkey = $_GET['passkey'];

    $sqlrecuperauser =SELECT * FROM utenti_tem WHERE codiceconferma = '$passkey';
    $risultatouser = mysql_query($sqlrecuperauser);

    if ($risultatouser); {

    $contauser = mysql_num_rows ($contauser);

    if ( $contauser == 1) {

    $rows = mysql_fetch_array ($risultatouser);
    $username = $rows ['username'];
    $email = $rows ['email'];
    $password = $rows ['password'];

    $passwordcript = md5(password);

    $sqlconfermauser = mysql_query ("INSERT INTO utenti (username, password, email) VALUES ('$username','$passwordcript', '$email')");

    if ($sqlconfermauser){

    echo "il tuo account è stato attivato con successo";
    $sqleliminadati = mysql_query ("DELETE FROM utenti_temp WHERE codiceconferma = '$passkey'");
    }else {

    echo "errore";

    }
    }
    }

    ?>
    <div id="wrapper">

    </div>

    </body>
    </html>

    invece il login.php
    <?php

    include 'header.php';

    ?>

    <div id="wrapper">

    <?php


    $p =$_GET['azione'];


    //login.php? azione=login
    if ($p == "login")?>

    <form metod="post" action="#" id="formlogin">

    <label for="username">username</label>
    <input type="text" name="username" id="username" /><br>
    <label for="password">password</label>
    <input type="text" name="password" id="password" /><br>
    <input type="submit" name="invia" id="login= value="accedi" />
    </form>


    <?php


    ($username = mysql_real_escape_string ($_POST) ['username']);
    ($password = mysql_real_escape_string ($_POST) ['password']);

    if ($username == "" || $password == ""); {

    echo "attenzione devi compilare i campi"

    } else {

    $password_cript = md5 ($password);

    $recuperadati = mysql_query("SELECT * FROM utenti WHERE username = '$username AND password = '$password_cript'");
    $verificadati = mysql_num_rows($recuperadati);

    } if ($verificadati == 1) {

    $sessione mysql_fetch_array($recuperadati);
    $_session ['utente'] = $session ['username'];
    echo "login effettuato con successo";
    header("refresh : 2; URL=index.php");

    } else {

    echo "dati non presenti nel database";

    }
    {


    //login.php? azione=logout
    if}elseif ($p =="logout") {

    session_destroy ();
    echo "logout effettuato con successo";
    header("refresh: 2; URL=index.php");
    }
    ?>



    </div>

    </body>
    </html>

  8. #8
    Guest

    Predefinito

    Ma scrivere con un po' di attenzione è difficile?

    Codice PHP:
    $username =mysql_real_escape_string($_POST['username']
    $password1 =mysql_real_escape_string($_POST['password1']
    $password2 =mysql_real_escape_string($_POST['password2']
    $email =mysql_real_escape_string($_POST['email']
    Pare brutto chiudere le parentesi tonde?

  9. #9
    Guest

    Predefinito

    Perché isset() è una funzione e vuole le parentesi
    Codice PHP:
    if (!isset($_GET['passkey']))
    Per quanto riguarda
    Codice PHP:
    ($username = mysql_real_escape_string ($_POST) ['username']);
    non hai cambiato assolutamente nulla. Deve diventare
    Codice PHP:
    $username = mysql_real_escape_string ($_POST['username']);
    Perché le parentesi che contengono tutta la riga non servono assolutamente a nulla e soprattutto non so chi ti abbia detto di racchiudere tra parentesi $_POST e $_GET, ma è sbagliato.
    Oltretutto ti darà errore anche:
    Codice PHP:
    $sessione mysql_fetch_array($recuperadati);
    $_session ['utente'] = $session ['username'];
    perché dovrebbe essere
    Codice PHP:
    $sessione = mysql_fetch_array($recuperadati);
    $_SESSION ['utente'] = $sessione ['username'];
    Quindi, scusa, ma se hai fatto tu questo codice di consiglio di ripassare un po' il PHP o di farti fare il codice da qualcuno, perché queste pagine sono piene di errori e non possiamo stare qui tutto il giorno a correggere ogni volta tutti gli errori, soprattutto se ignori i nostri post (simpleticket ti aveva detto di sostituire imput con input, ma non l'hai fatto).
    P.S.: Devi mettere i tag [PHP].
    Ultima modifica di orgxiiipu : 28-12-2012 alle ore 12.51.53

  10. #10
    Guest

    Predefinito errore nel register.php e login.php

    ciao ho corretto gli errori da voi suggeriti e tutto è andato a posto,e vero mo mi da un altro errore un è nel login ed è questo:
    Parse error: syntax error, unexpected T_ELSE in /membri/squadranostra/login.php on line 38
    ed un altro è nel register ed è questo:
    Parse error: syntax error, unexpected '[' in /membri/squadranostra/register.php on line 32
    se gentilmente volete darmi una mano, se no va bene cosi, mi scuso se i codici non li ho chiuso tra i tag php ve li posto di nuovo corretti come me li avete suggerito voi.
    login.php
    Codice PHP:
    <?php

    include 'header.php';

    ?>

    <div id="wrapper">

    <?php


    $p
    =$_GET['azione'];


    //login.php? azione=login
    if ($p == "login")?>

    <form metod="post" action="#" id="formlogin">

    <label for="username">username</label>
    <input type="text" name="username" id="username" /><br>
    <label for="password">password</label>
    <input type="text" name="password" id="password" /><br>
    <input type="submit" name="invia" id="login= value="accedi" />
    </form>


    <?php


    $username
    = mysql_real_escape_string ($_POST ['username']);
    $password = mysql_real_escape_string ($_POST ['password']);

    if (
    $username == "" || $password == ""); {

    echo
    "attenzione devi compilare i campi";

    [
    COLOR="Red"] } else { [/COLOR]

    $password_cript = md5 ($password);

    $recuperadati = mysql_query("SELECT * FROM utenti WHERE username = '$username AND password = '$password_cript'");
    $verificadati = mysql_num_rows($recuperadati);

    } if (
    $verificadati == 1) {

    $sessione =mysql_fetch_array($recuperadati);
    $_SESSION ['utente'] = $sessione ['username'];
    echo
    "login effettuato con successo";
    header("refresh : 2; URL=index.php");

    } else {

    echo
    "dati non presenti nel database";

    }
    {


    //login.php? azione=logout
    if}elseif ($p =="logout") {

    session_destroy ();
    echo
    "logout effettuato con successo";
    header("refresh: 2; URL=index.php");
    }
    ?>



    </div>

    </body>
    </html>
    register.php
    Codice PHP:
    <?php

    include 'header.php';

    ?>

    <?php



    if (!isset ($_GET ['passkey'])) {

    if (!isset (
    $_POST ['invia'])) {?>

    <form metod="post" action="#" id="form registrazione"

    <label for="username">username</label>
    <input type="text" name="username" id="username" /><br>
    <label for="password1">password</label>
    <input type="text" name="password1" id="password1" /><br>
    <label for="password2">ripeti password</label>
    <input type="text" name="password2" id="password2" /><br>
    <label for="email">email</label>
    <input type="text" name="email" id="email" /><br>
    <input type="submit name="invia" id="registrati= value="registrati" />
    </form>

    <?php } else {
    //creazione codice di conferma
    $codice_conferma=md5(uniqid(rand()));
    //valori del form
    [COLOR="Red"]$username =mysql_real_escape_string($_POST)['username'][/COLOR]
    $password1 =mysql_real_escape_string($_POST)['password1']
    $password2 =mysql_real_escape_string($_POST)['password2']
    $email =mysql_real_escape_string($_POST)['email']
    //controlli campi vuoti e password
    if ($username ==""| |$email =="") {
    echo
    "devi riempire tutti i campi";
    }elseif (
    $password1==""| |password2==""){
    echo
    "devi riempire tutti i campi";
    }elseif (
    $password2 != $password1) {
    echo
    "le password devono coincidere";
    }{else
    //inserisci i dati nel db_utenti_temp
    $recuperauseremail = mysql_query ("SELECT id FROM utenti WHERE username '$username' OR email '$email'");
    $contausermail = mysql_num_rows($recuperausermail)

    if (
    $contausermail > 0 ){
    echo
    "nome utente o email gia disponibili";
    }else{
    //invia dati al db utenti_tem
    $inviautentitemp = mysql_query ("INSERT utenti_temp (codiceconferma, username, password,email) VALUES ('$codiceconferma','$username','$password2','$email')");

    if (
    $inviautentitemp){

    $to=$email;
    $subject="conferma la registrazione";
    $header="da:amministratore";
    $message="ecco il tuo codice di attivazione\r\n";
    $message="clicca sul link per confermare la registrazione\r\n";
    $message="http://127.0.0.1/my_squadranostra/register.php?passkey=$codiceconferma";

    $sendmail="mail($to,$subject,$message,$header);
    }
    if (
    $sendmail){
    echo"
    per completare la registrazione controla la tua casella di posta elettronica e clicca sul link di attivazione";
    }{else
    echo="
    errore,link di attivazione non inviato";
    }
    }
    }
    }
    }else{

    $passkey = $_GET['passkey'];

    $sqlrecuperauser =SELECT * FROM utenti_tem WHERE codiceconferma = '$passkey';
    $risultatouser = mysql_query($sqlrecuperauser);

    if (
    $risultatouser); {

    $contauser = mysql_num_rows ($contauser);

    if (
    $contauser == 1) {

    $rows = mysql_fetch_array ($risultatouser);
    $username = $rows ['username'];
    $email = $rows ['email'];
    $password = $rows ['password'];

    $passwordcript = md5(password);

    $sqlconfermauser = mysql_query ("INSERT INTO utenti (username, password, email) VALUES ('$username','$passwordcript', '$email')");

    if (
    $sqlconfermauser){

    echo "
    il tuo account è stato attivato con successo";
    $sqleliminadati = mysql_query ("DELETE FROM utenti_temp WHERE codiceconferma = '$passkey'");
    }else {

    echo "
    errore";

    }
    }
    }

    ?>
    <div id="
    wrapper">

    </div>

    </body>
    </html>

  11. #11
    Guest

    Predefinito

    Scusa, ma ci stai prendendo in giro?
    Citazione Originalmente inviato da simpleticket Visualizza messaggio
    Ma scrivere con un po' di attenzione è difficile?

    Codice PHP:
    $username =mysql_real_escape_string($_POST['username']
    $password1 =mysql_real_escape_string($_POST['password1']
    $password2 =mysql_real_escape_string($_POST['password2']
    $email =mysql_real_escape_string($_POST['email']
    Pare brutto chiudere le parentesi tonde?
    E nel tuo post
    Citazione Originalmente inviato da squadranostra Visualizza messaggio
    Codice PHP:
    [COLOR="Red"]$username =mysql_real_escape_string($_POST)['username'][/COLOR]
    $password1 =mysql_real_escape_string($_POST)['password1']
    $password2 =mysql_real_escape_string($_POST)['password2']
    $email =mysql_real_escape_string($_POST)['email']
    Ma era ovviamente
    Codice PHP:
    $username =mysql_real_escape_string($_POST['username']);
    $password1 =mysql_real_escape_string($_POST['password1']);
    $password2 =mysql_real_escape_string($_POST['password2']);
    $email =mysql_real_escape_string($_POST['email']);
    Perché ti abbiamo già detto che fare ($_POST)[] non vuol dire nulla.
    Detto questo, se qualcun altro vuole aiutarti è libero di farlo, ma io ci rinuncio.

  12. #12
    Guest

    Predefinito

    Mi dovete scusare, non vi ho potuto avvisare prima, ma quel post già lo avevo corretto io, in quando mi ero ricordato di quello che mi avevate detto nel messaggio precedente, che GET e POST, non si chiudono tra parentesi. Non voglio prendere in giro nessuno, sono qui per imparare penso ve ne siete accorti che sono un principiante, altrimenti non avrei commesso quegli errori,sicuramente grazie a voi non commettero più l'errore di chiudere tra parentesi GET e POST, grazie ancora una volta per la vostra disponibilità conto su di voi per qualche altra cosa ciao alla prossima

Regole di scrittura

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