2013-06-24 4 views
0

У меня есть PHP файл, в котором я определенный идентификатор пользователя и пароль, как этотUpdate определен пароль от формы

define('USER', "[email protected]"); 
define('PASSWORD', "[email protected]"); 

Теперь я хочу изменить пароль с формой изменения пароля. Пожалуйста, помогите мне, как я могу это сделать. Форма проста:

<form name="changepassword" action="password.php" method="post"> 
    <label>New password</label> 
    <input type="text" name="password" value="password"> 
    <input type="submit" value="Submit"> 
    </form> 
+0

«Изменение пароля с изменением пароля ...», что именно вам нужно, после того, как подать, он будет перенаправлен на страницу password.php .... нужны некоторые больше desc. –

+0

Не используйте 'define' для отслеживания пароля .. его константа по какой-либо причине. – Killrawr

ответ

-1

Если вы определяете пароль как константу в своем коде, его нельзя просто изменить с помощью формы. простым решением для изменения пароля было бы сохранить его в файле. когда есть post reqeust, обновите файл.

это может, например, выглядеть следующим образом:

$pwFile = '/path/to/password.txt'; 

if (isset($_POST) && array_key_exists('password', $_POST)) { 

    if (is_writable($pwFile)) { 

     file_put_contents($_POST['password'], $pwFile); 
     $updated = 1; 

    } else { 

     $updated = 0; 
    } 

    header('Location: password.php?updated='. $updated); 
    exit(0); 
} 

if (is_file($pwFile) && is_readable($pwFile)) { 

    $password = file_get_contents($pwFile); 

} else { 

    $password = 'd3f4ul7p455w0rd'; 
} 

define('PASSWORD', $password); 

if (isset($_GET['updated'])) { 

    if (1 == $_GET['updated']) { 

     echo 'password updated'; 

    } else { 

     echo 'could not update password'; 
    } 
} 
+0

Сохранить пароль в файле '.txt'? Зачем? –

+0

так что вы хотите объяснить новобранец, как правильно использовать базу данных с зашифрованными, солеными и переполненными паролями? это просто простое решение для него, которое он сможет понять;) Поэтому, пожалуйста, отмените свой -1. или у вас есть лучшая идея, чтобы привести его вперед, не обращаясь к нему;) –

+0

Говорить с вопросом о паролях для хранения паролей в текстовых файлах является небезопасным способом и, безусловно, не является хорошим ответом. Таким образом, -1 для вашего ответа справедливо ... Вы могли бы указать OP на некоторые учебные пособия ... –