У меня есть страница на моем сайте, который позволяет пользователям изменять свои паролихочу, чтобы мои пользователи должны abble изменить Парольпользователь
Форма запрашивает имя пользователя, текущий пароль, новый пароль, подтвердите новый пароль.
Если пользователь вводит всю информацию скрипт выскакивает пожалуйста, заполните форму правильно
и сообщение об ошибке показывает
(Примечание: Undefined переменной: wtbusers в /дома/WWW/имя хоста/др/имя файла в строке 16
Предупреждение: mysql_num_rows(): поставляется аргумент не является допустимым MySQL результат ресурсов в/главная/WWW/имя хоста/дг/имя файла в строке 20)
Мой код вклеен ниже, если кто-то может помочь, был бы признателен! Благодаря!
Тина
Changepassword информационный экран:.
<div id="inlogscherm">
<form name="form1" method="post" action="changepw.php">
<div class="textm">Change password</div><br>
<div class="text">Username:</div><div class="invulbalkje"><? echo "{$_SESSION['username']}"; ?></div><br />
<input name="username" type="text" id="username" value="<? echo "{$_SESSION['username']}"; ?>">
<div class="text">Password:</div><input name="pin" type="password" id="pin" class="invulbalkje"><br />
<div class="text">New Password:</div><input name="newpassword" type="password" id="newpassword" class="invulbalkje"><br />
<div class="text">Repeat New Password:</div><input name="repeatnewpassword" type="password" id="repeatnewpassword" class="invulbalkje"><br />
<input type="submit" name="Submit" value="Change" class="button">
</form>
здесь является PHP для изменения (changepw.php)
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
session_start();
include 'db.php';
$username = $_POST['username'];
$pin = $_POST['pin'];
$newpassword = $_POST['newpassword'];
$repeatnewpassword = $_POST['repeatnewpassword'];
$encrypted_password=md5($pin);
$encrypted_newpassword=md5($newpassword);
$result = mysql_query("SELECT pin FROM $wtbusers WHERE username='$username' and pin = '$pin'");
if(!$result)
{
echo"<script>alert('Please Fill Form Correctly')</script>"; }
if(mysql_num_rows($result)){
if($newpassword==$repeatnewpassword){
$sql=mysql_query("UPDATE $wtbusers SET pin='$pin' where username='$username'");
if($sql)
{
header("location:success.php");
}
else
{
header("location:error3.php");
}
} else {
header("location:error_password_not_matched.php");
}
} else {
echo"<script>alert('Please Fill Form Correctly')</script>";
}
?>
Если вы видите проблемы, пожалуйста, свяжитесь со мной. Я буду очень благодарен за это!
Yuu необходимо присвоить имя таблицы в ваших «$ wtbusers» переменной, что-то вроде $ wtbusers = «пользователей» – kamus
Пожалуйста, вы можете быть более конкретным? $ wtbusers уже является моим именем таблицы. Спасибо – Tina
Если имя таблицы начинается с $, вы должны избегать использования «и изменять для», потому что все в кавычках будет анализироваться php и скажет, что $ wtbusers не определено, потому что в вашем php-файле вы не определяете эту переменную. – kamus