Visualizzazione risultati 1 fino 14 di 14

Discussione: Parse error: syntax error [era:Aiuto!!!!ho un problema]

  1. #1
    Guest

    Predefinito Parse error: syntax error [era:Aiuto!!!!ho un problema]

    dove sbaglio?
    Codice PHP:
    <?php
    include 'header.php';
    ?>
    <div id="wrapper">


    <?php
    $codice
    = "";
    if (isset(
    $_POST['codice'])) {
    $codice = $_POST['codice'];
    }
    ?>
    }
    / login.php?azione=login
    if($p == "login"){

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

    <form method="post" action="#" id="form login">

    <label for="username">Username</label>
    <input type="text" name="username" id="username" /><br>
    <label for="password">Password</label>
    <input type="password" name="password" id="password" /><br>
    <input type="submit" name="invia" id="login" value="Accedi" />

    </form>

    <?php } else {
    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);

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

    echo
    "Attenzione, devi compilare tutti 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'] = $sessione['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");

    }



    ?>



    </div>

    </body>
    </html>
    Ultima modifica di alemoppo : 20-07-2013 alle ore 19.52.19 Motivo: +tag [php]

  2. #2
    Guest

    Predefinito

    Prima di tutto ti consiglio di seguire il regolamento:
    1. Metti un titolo che riassuma il tuo problema
    2. Utilizza gli appositi tag CODE (tra parentesi quadre [] e per terminarlo utilizzare la backslash [/]) per racchiudere eventuale codice

    In oltre potresti spiegare, prima di postare direttamente il codice, qual'è il problema in modo da risparmiare tempo e aiutarti al meglio ;)
    Ultima modifica di mathis : 20-07-2013 alle ore 19.01.29

  3. #3
    Guest

    Predefinito

    Parse error: syntax error, unexpected '}' on line 29 mi da questo errore,non sono esperto
    Ultima modifica di itcofficialsite : 20-07-2013 alle ore 19.22.58

  4. #4
    Guest

    Predefinito

    Se modifichi il codice del primo messaggio e lo inserisci fra due tag PHP, guardando i colori ti accorgi subito dove è l'errore

  5. #5
    Guest

    Predefinito

    scusa come ho già detto sono inesperto,anche perché ho fatto questo codice grazie ai tutorial,ma a quando pare è errato,quindi ti chiedo per piacere se potresti correggermi il codice perchè altrimenti non ti capirò molto,ti ringrazio in anticipo

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Ho aggiunto i tag [php].
    Prova a vedere ora.

    Ciao!

  7. #7
    Guest

    Predefinito

    scusa ma dov'é?

  8. #8
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Questo else:
    Codice PHP:
    } else {
    (il primo, riga 29) a quale if è riferito?

    Ciao!
    Ultima modifica di alemoppo : 20-07-2013 alle ore 20.07.58

  9. #9
    Guest

    Predefinito Il problema l'ho risolto,ma se ne sono aggiunti altri due

    ragazzi ho risolto quel problema ma se ne sono presentati altri due!
    Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in
    Notice: Undefined variable: sentmail in C:\wamp\www\PrimoProgetto\register.php on line 85
    Codice PHP:
    <?php

    include 'header.php';

    ?>

    <div id="wrapper">

    <?php

    $p
    = $_GET['azione'];

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

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

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

    <label for="username">Username</label>
    <input type="text" name="username" id="username" /><br>
    <label for="password">Password</label>
    <input type="password" name="password" id="password" /><br>
    <input type="submit" name="invia" id="login" value="Accedi" />

    </form>

    <?php } else {

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

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

    echo
    "Attenzione, devi compilare tutti 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'] = $sessione['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");

    }



    ?>



    </div>

    </body>
    </html>
    e poi quest'altro
    Codice PHP:
    <?php

    include 'header.php';

    ?>

    <div id="wrapper">

    <?php

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

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

    <form method="post" action="#" id="formregistrazione">

    <ul>
    <li><label for="username">Username</label>
    <input type="text" name="username" id="username" />
    </li>
    <li>
    <label for="password1">Password</label>
    <input type="password" name="password1" id="password1" />
    </li>
    <li>
    <label for="password2">Ripeti Password</label>
    <input type="password" name="password2" id="password2" />
    </li>
    <li>
    <label for="email">Email</label>
    <input type="text" name="email" id="email" />
    </li>
    </ul>
    <input type="submit" name="invia" id="registrati" value="Registrati" />
    </form>

    <?php } else {

    // creazione di un codice di conferma
    $codiceconferma = 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']);

    // controllo 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{

    $recuperauseremail = mysql_query("SELECT id FROM utenti WHERE username='$username' OR email='$email'");
    $contausermail = mysql_num_rows($recuperauseremail);

    if(
    $contausermail > 0){

    echo
    "Nome utente o email già disponibili";

    } else {

    // Invia dati alla tb utenti_temp

    $inviautentitemp = mysql_query("INSERT INTO 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/sito/register.php?passkey=$codiceconferma";

    $sentmail=mail($to,$subject,$message,$header);

    }

    if(
    $sentmail){

    echo
    "Per completare la registrazione controlla 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_temp WHERE codiceconferma = '$passkey'";
    $risultatouser = mysql_query($sqlrecuperauser);

    if(
    $risultatouser) {

    $contauser = mysql_num_rows($risultatouser);

    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>
    </body>
    </html>
    Lo so che sarebbe una faticaccia per voi ma se avete capito il problema mi potete riscrivere tutti e due i codici corretti,vi ringrazio in anticipo

  10. #10
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Citazione Originalmente inviato da itcofficialsite Visualizza messaggio
    Lo so che sarebbe una faticaccia per voi ma se avete capito il problema mi potete riscrivere tutti e due i codici corretti
    No: sarebbe troppo semplice e non impareresti molto.
    Devi cercare di correggere da solo gli errori.

    Sai il significato dell'errore che ti appare?

    Codice:
    Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in

    Il secondo errore (in realtà non è un errore, ma un warning), dice che:
    Codice PHP:
    if($inviautentitemp){

    [...]

    $sentmail=mail($to,$subject,$message,$header);

    }

    if(
    $sentmail){

    echo
    "...";

    }else{
    Se il primo if fallisce, $sentmail non sa cosa è, perché non è stata né dichiarata, né soprattutto inizializzata. Quindi non sa come gestire il secondo if.

    Ciao!
    Ultima modifica di alemoppo : 21-07-2013 alle ore 01.07.09

  11. #11
    Guest

    Predefinito Cavolo...

    purtroppo non capisco
    se hai risolto il problema per favore riscrivimi il codice altrimenti non ti capirò
    Ultima modifica di itcofficialsite : 21-07-2013 alle ore 12.08.25

  12. #12
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Per il primo errore, qual'é il significato? (è in inglese, non occorre saper nulla di programmazione).

    Ciao!

  13. #13
    Guest

    Predefinito

    ho trovato la causa negli altri forum
    "probabilmente hai utilizzato iun modo errato la funzione mysql_num_rows() di php"
    però non so come corregere il problema!

  14. #14
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Sì ma se non leggi i messaggi di PHP è impossibile che riesci a capire l'errore.

    Ti hanno detto che hai usato in modo errato la mysql_num_rows(). Prova quindi a fare il var_dump() delle variabili che gli passi.

    Ciao!

Tags for this Thread

Regole di scrittura

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