Visualizzazione risultati 1 fino 5 di 5

Discussione: Errore if "concatenato"

  1. #1
    Guest

    Predefinito Errore if "concatenato"

    Ciao a tutti,

    Ho creato una pagina che cambia la password di un determinato utente, ma mi da errore nella struttura if else (quella senza graffe) del seguente codice:

    Codice PHP:
    <?php
    $vecchia
    = "$_POST[vecchiapass]";
    $nuova = "$_POST[nuovapass]";
    $ripeti = "$_POST[ripass]";
    $username = $_SESSION['username'];
    include(
    'include/database_user_connection.php');
    if(
    $nuova == $ripeti){

    $sql = "SELECT * FROM utenti WHERE password = MD5('$vecchia')";
    $query = mysql_query($sql) or die("errore nella query: ".mysql_error());

    if(
    mysql_num_rows($query) == "1")

    mysql_query("UPDATE utenti SET password = MD5('$nuova') WHERE password = MD5('$vecchia') AND username = '$username'");

    echo
    "Password Modificata!";
    header("Refresh: 2; URL=index.php");

    else

    echo
    "Vecchia Password errata!";

    header("Refresh: 2; URL=cambia_pass.php");

    }else{
    echo
    "Le nuove password non coincidono!";
    header("Refresh: 2; URL=cambia_pass.php");
    }
    ?>
    Come posso rimediare? e secondo voi può funzionare questo codice? grazie mille a tutti!

  2. #2
    Guest

    Predefinito

    Fai un misto di if con graffe e senza graffe, semplifica un po':
    Codice PHP:
    <?php
    $vecchia
    = $_POST['vecchiapass']; // impariamo a scrivere correttamente le variaibili
    $nuova = $_POST['nuovapass'];
    $ripeti = $_POST['ripass'];
    $username = $_SESSION['username'];
    include(
    'include/database_user_connection.php');
    if(
    $nuova == $ripeti){
    $sql = "SELECT * FROM utenti WHERE password = MD5('$vecchia')";
    $query = mysql_query($sql) or die("errore nella query: ".mysql_error());

    if(
    mysql_num_rows($query) == "1"){
    mysql_query("UPDATE utenti SET password = MD5('$nuova') WHERE password = MD5('$vecchia') AND username = '$username'");

    echo
    "Password Modificata!";
    header("Refresh: 2; URL=index.php");

    }else{

    echo
    "Vecchia Password errata!";
    header("Refresh: 2; URL=cambia_pass.php");
    }

    }else{
    echo
    "Le nuove password non coincidono!";
    header("Refresh: 2; URL=cambia_pass.php");
    }
    ?>

    Ciao!

  3. #3
    Guest

    Predefinito

    Ok grazie debug, ma secondo te può funzionare come codice o la password dell'utente non la cambierà mai?

  4. #4
    Guest

    Predefinito

    Tecnicamente mi pare tutto esatto.
    E poi, come al solito, basta testare!


    Ciao!

  5. #5
    Guest

    Predefinito

    OK grazie mille, non lo posso testare ancora per vari motivi.
    Ciao.

Regole di scrittura

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