Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Ciao problema con questo codice PHP!!!

    Ciao voglio rimettere questo al sito per il mio amico per cambiare password, l'altro non vuole andare!!!

    Ecco questo è il codice

    <?php

    /**in questa parte dello script creiamo tre variabili $lo $pa $npd*/
    /**ognuna attesta la correttezza della procedura*/

    if (isset($_POST['submit']))
    {
    require_once ('databaseconnectinfo.php');

    /**funzione per filtrare i dati da inserire*/
    function escape_data ($data)
    {
    global $dbc;
    if (ini_get('magic_quotes_gpc'))
    {
    $data = stripslashes($data);
    }
    return mysql_real_escape_string($data, $dbc);
    }

    $message = NULL;

    /**verifichiamo l'esistenza del loginName altrimenti $lo è FALSE*/

    if (empty($_POST['login']))
    {
    $message .= '

    You forgot to enter your Login Name!</p>';
    }
    else
    {
    $lo = escape_data($_POST['login']);
    }

    /**verifichiamo l'esistenza della password (vecchia password) altrimenti $pa è FALSE*/

    if (empty($_POST['password']))
    {
    $pa = FALSE;
    $message .= '

    You forgot to enter your existing password!</p>';
    }
    else
    {
    $pa = escape_data($_POST['password']);
    }

    /**verifichiamo l'esistenza del password1 (nuova password) altrimenti $nps è FALSE*/
    /**verifichiamo che password1 coincide con password2 (conferma password) altrimenti $nps è FALSE*/

    if (empty($_POST['password1']))
    {
    $npa = FALSE;
    $message .= '

    You forgot to enter your new password!</p>';
    }
    else
    {
    if ($_POST['password1'] == $_POST['password2'])
    {
    $npa = escape_data($_POST['password1']);
    }
    else
    {
    $npa = FALSE;
    $message .= '

    Your new password did not match the confirmed new password!</p>';
    }
    }

    /**se tutte e tre le variabili sono ok facciamo la query*/
    /**individuiamo l'id del record da modificare*/
    /**se è ==1 facciamo la query di update*/

    if ($lo && $pa && $npa)
    {
    $query = "SELECT id FROM tablename WHERE (loginName='$lo' AND password=PASSWORD('$pa') )";
    $result = @mysql_query ($query);
    $num = mysql_num_rows ($result);
    if ($num == 1)
    {
    $row = mysql_fetch_array($result, MYSQL_NUM);
    $query = "UPDATE tablename SET password=PASSWORD('$npa') WHERE id=$row[0]";
    $result = @mysql_query ($query);
    if (mysql_affected_rows() == 1)
    {
    echo '

    Your password has been changed.</p>';
    exit();
    }
    else
    {
    $message = '

    Your password could not be changed due to a system error. We apologize for any inconvenience.</p>

    ' . mysql_error() . '</p>';
    }
    }
    else
    {
    $message = '

    Your loginName and password do not match our records.</p>';
    }
    mysql_close();
    }
    else
    {
    $message .= '

    Please try again.</p>';
    }

    }

    /**stampa del messaggio risultante dalla procedura*/
    if (isset($message))
    {
    echo '<font color="red">', $message, '</font>';
    }
    ?>

    <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
    <table cellpadding="2" cellpacing="2 border="0">
    <tr>
    <td><h2><font face="Times New Roman" color="green">[b]<div align="center">Change Your Password</div></font></h2></td>
    </tr>
    <tr>
    <td><font face="Times New Roman" color="green">Login Name:</td>
    <td>
    <input type="text" value="" name="loginName" /><?php if (isset($_POST['loginName'])) echo $_POST['loginName'];?></tr></td>
    <tr>
    <td>
    <font face="Times New Roman" color="green">Current Password:</td>
    <td>
    <input type="password" value="" name="password" /></tr></td>
    <tr>
    <td>
    <font face="Times New Roman" color="green">New Password:</td>
    <td><input type="password" value="" name="password1" /></tr></td>
    <tr>
    <td>
    <font face="Times New Roman" color="green">Confirm New Password:</td>
    <td><input type="password" value="" name="password2" /></td></tr>

    </fieldset>
    <tr>
    <td>
    <input type="submit" name="submit" value="changeme" /></tr></td>


    E questi sono gli errori e mi da Please Try Again invece di cambiare la password come posso fare??? Con questo, questa volta spero di riuscirci a risolvere il problema!!!

    Warning: mysql_real_escape_string() expects parameter 2 to be resource, null given in D:\Inetpub\webs\feelmeit\databaseconnectinfo.php on line 18

    Warning: mysql_real_escape_string() expects parameter 2 to be resource, null given in D:\Inetpub\webs\feelmeit\databaseconnectinfo.php on line 18

    Warning: mysql_real_escape_string() expects parameter 2 to be resource, null given in D:\Inetpub\webs\feelmeit\databaseconnectinfo.php on line 18

    Please try again.

    Fatal error: Cannot redeclare escape_data() (previously declared in D:\Inetpub\webs\feelmeit\databaseconnectinfo.php:1 1) in D:\Inetpub\webs\feelmeit\manageme.php on line 92

  2. #2
    Ciao ancora nessuno mi risponde???

  3. #3
    Beh, per prima cosa andrei a vedere dove dice l'errore:

    File databaseconnectinfo.php linea 11 e poi manageme.php linea 92.

    Ciao.

  4. #4
    Ciao ora mi da Warning: mysql_real_escape_string() expects parameter 2 to be resource, null given in D:\Inetpub\webs\feelmeit\databaseconnectinfo.php on line 18

    Warning: mysql_real_escape_string() expects parameter 2 to be resource, null given in D:\Inetpub\webs\feelmeit\databaseconnectinfo.php on line 18

    Your new password did not match the confirmed new password!

    Please try again.

    Fatal error: Cannot redeclare escape_data() (previously declared in D:\Inetpub\webs\feelmeit\databaseconnectinfo.php:1 1) in D:\Inetpub\webs\feelmeit\changepass.php on line 90

    Sono cambiate le righe oltre alla 11 anche 18 e 90!!!

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    539
    ma perchè non ti leggi i messaggi di errore prima di chiedere aiuto??

    Cannot redeclare escape_data()
    vuol dire che non puoi dichiarare due volte la stessa istruzione;

    mysql_real_escape_string() expects parameter 2 to be resource, null given
    vuol dire che anzichè passare correttamente i parametri, gli passi un valore nullo (o non gli passi nulla), come secondo parametro....

  6. #6
    Ciao il problema è che non so molto di PHP come posso fare quindi per risolvere???

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.