Jelajahi Sumber

完成修改密码功能

visuddhinanda 5 tahun lalu
induk
melakukan
5f5f00a8c7
3 mengubah file dengan 91 tambahan dan 6 penghapusan
  1. 3 3
      app/studio/setting.php
  2. 29 3
      app/ucenter/index.php
  3. 59 0
      app/ucenter/pwd_set.php

+ 3 - 3
app/studio/setting.php

@@ -360,10 +360,10 @@ $album_power["2"]="编辑";
 		case "account":
 			echo "<h2>Accont</h2>";
 			echo "User Name:$username<br />";
-			echo "Nick Name:$nickname<br />";
-			echo "User ID:$userid<br />";
+			echo "Nick Name:<>$nickname<br />";
 			echo "Email:$email<br />";
-			echo "<a href='login.php?op=logout'>Logout</a>";
+			echo "<a href='login.php?op=logout'>Logout</a><br>";
+			echo "<a href='../ucenter/pwd_set.php'>修改密码</a>";
 			break;
 		case "album":
 			$db_file = _FILE_DB_RESRES_INDEX_;

+ 29 - 3
app/ucenter/index.php

@@ -16,6 +16,9 @@ require_once "../public/function.php";
 	switch($op){
 		case "login":
 		{
+			if(isset($_GET["url"])){
+				$goto_url = $_GET["url"];
+			}
 			break;
 		}
 		case "logout":
@@ -123,19 +126,36 @@ require_once "../public/function.php";
 					setcookie("userid", $userid, time()+60*60*24*365,"/");
 					setcookie("nickname", $nickname, time()+60*60*24*365,"/");
 					setcookie("email", $email, time()+60*60*24*365,"/");
-	
+					if(isset($_POST["url"])){
+						$goto_url = $_POST["url"];
+					}
+					if(isset($_COOKIE["url"])){
+						setcookie("pwd_set", "on", time()+60,"/");
+					}
 					$newUserPath=_DIR_USER_BASE_.'/'.$userid.'/';
 					if(!file_exists($newUserPath)){
 						echo "error:cannot find user dir:$newUserPath<br/>";
 					}
-?><!DOCTYPE html>
+?>
+
+<!DOCTYPE html>
 <html>
 	<head>
+
 		<title>wikipali starting</title>
-		<meta http-equiv="refresh" content="0,../studio/index.php"/>
+		<?php
+		if(isset($goto_url)){
+			$goto = $goto_url;
+		}
+		else{
+			$goto = "../studio/index.php";
+		}
+		?>
+		<meta http-equiv="refresh" content="0,<?php echo $goto;?>"/>
 	</head>
 	
 	<body>
+	
 		<br>
 		<br>
 		<p align="center"><a href="../studio/index.php">Auto Redirecting to Homepage! IF NOT WORKING, CLICK HERE</a></p>
@@ -428,6 +448,12 @@ require_once "../public/function.php";
 			<form action="index.php" method="post">
 				<div>
 				<?php
+				if(isset($goto_url)){
+					echo "<input type=\"hidden\" name=\"url\" value=\"{$goto_url}\"  />";
+				}
+				else if(isset($_POST["url"])){
+					echo "<input type=\"hidden\" name=\"url\" value=\"{$_POST["url"]}\"  />";
+				}
 				if(isset($_POST["username"]) && $_username_ok==true){
 					echo "<span id='tip_password' class='form_field_name'>".$_local->gui->password."</span>";
 					echo '<input type="password" name="password" />';

+ 59 - 0
app/ucenter/pwd_set.php

@@ -0,0 +1,59 @@
+<?php 
+require_once '../path.php';
+require_once "../public/load_lang.php";
+
+if(!isset($_COOKIE["userid"])){
+    echo "尚未登陆<a href='index.php'>登陆</a>";
+}
+else{
+    if(isset($_POST["pwd_set"]) ){
+        if($_POST["password"]==$_POST["repassword"]){
+            $md5_password=md5($_POST["password"]);
+            $PDO = new PDO("sqlite:"._FILE_DB_USERINFO_, "", "");
+            $PDO->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
+            $query = "UPDATE user SET password = ? WHERE userid = ? ";
+            $stmt = $PDO->prepare($query);
+            $stmt->execute(array($md5_password,$_COOKIE["userid"]));
+            if (!$stmt || ($stmt && $stmt->errorCode() != 0)) {
+                $error = $PDO->errorInfo();;
+                echo "修改密码失败。错误信息:$error";
+            }
+            else{
+                echo "修改密码成功";
+            }	            
+        }
+        else{
+            echo "两次输入的密码不同。";
+        }
+
+    }
+    else{
+     if(isset($_COOKIE["pwd_set"])){
+        if($_COOKIE["pwd_set"]="on"){
+            echo "<h2>wikipali.org</h2>";
+            echo "<h2>重新设置密码</h2>";
+            ?>
+			<form action="pwd_set.php" method="post">
+                <div>
+                    <span id='tip_password' class='form_field_name'><?php echo $_local->gui->password;?></span>
+                    <input type="password" name="password"  value="" /><br>
+                    <input type="password" name="repassword"  value="" />
+                    <input type="hidden" name="pwd_set"  value="on" />
+				</div>
+                <div id="button_area">
+                    <input type="submit" value="<?php echo $_local->gui->continue;?>" style="background-color: var(--link-hover-color);border-color: var(--link-hover-color);" />
+                </div>
+			</form>
+            <?php
+        }
+    }
+    else{
+        setcookie("url", "pwd_set.php", time()+120,"/");
+        echo "为了验证是您本人的操作,请先登陆。<a href='index.php?op=login&url=pwd_set.php'>登陆</a>";
+    }       
+    }
+
+}
+
+
+?>