php设计个人用户 API: (1) 在“学号-姓名-PHP”文件夹中,创建 userinfo.php 脚本;(1 分) (2) 引入公共文件夹中的“学号_init.php、学号_function.php”脚本;(1 分) (3) 读取 Session 中的用户信息,若用户存在,返回用户信息;若不存在,返 回信息为空。返回数据内容如下:(8 分) 已登录数据: { "code":200, "msg" : "已登录", "data" : { "user":{...} } } 未登录数据: { "code":200, "msg" : "未登录,请前往登录!", }
时间: 2023-07-19 19:19:40 浏览: 62
下面是 `userinfo.php` 的代码实现:
```php
<?php
// 引入公共文件
require_once dirname(__FILE__) . '/../公共文件夹/学号_init.php';
require_once dirname(__FILE__) . '/../公共文件夹/学号_function.php';
// 检查用户是否登录
if (checkLogin()) {
// 获取用户信息
$user = $_SESSION['user'];
// 构造返回数据
$data = array(
"user" => $user
);
$result = array(
"code" => 200,
"msg" => "已登录",
"data" => $data
);
} else {
// 构造返回数据
$result = array(
"code" => 200,
"msg" => "未登录,请前往登录!"
);
}
// 返回 JSON 格式数据
echo json_encode($result);
```
该函数首先引入公共文件,然后调用公共文件中的 `checkLogin()` 函数检查用户是否登录。如果用户已经登录,则构造返回数据,其中 `user` 字段为当前用户信息,否则返回未登录信息。最后将返回数据以 JSON 格式输出。
相关问题
有如下字符串,里面包含多个用户信息数据,现在需要你解析这个字符串,获取里面的用户数据,并封装到User对象中,多个User对象在添加到List<User> 集合中: String userStrs ="10001:张三:男:1990-01-01#10002:李四:女:1989-01-09#10003:王五:男:1999-09-09#10004:刘备:男:1899-01-01#10005:孙悟空:男:1900-01-01#10006:张三:女:1999-01-01#10007:刘备:女:1999-01-01#10008:张三:女:2003-07-01#10009:猪八戒:男:1900-01-01"; 注意: 1、字符串中的规则如下,多个用户用 # 拼接,用户的信息之间用 : 拼接。你需要通过字符串的分割操作来完成 2、其中用户id和生日是需要进行类型转换的,其中id需要将String转成Long,生日需要将String转成Date,此处可以使用SimpleDateFormat完成日期的转换。
好的,我会为您解析字符串并封装成User对象,代码如下:
```java
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
class User {
private Long id;
private String name;
private String gender;
private Date birthday;
public User(Long id, String name, String gender, Date birthday) {
this.id = id;
this.name = name;
this.gender = gender;
this.birthday = birthday;
}
// getter and setter methods
}
public class Main {
public static void main(String[] args) {
String userStrs = "10001:张三:男:1990-01-01#10002:李四:女:1989-01-09#10003:王五:男:1999-09-09#10004:刘备:男:1899-01-01#10005:孙悟空:男:1900-01-01#10006:张三:女:1999-01-01#10007:刘备:女:1999-01-01#10008:张三:女:2003-07-01#10009:猪八戒:男:1900-01-01";
List<User> userList = new ArrayList<>();
String[] users = userStrs.split("#");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for (String user : users) {
String[] userInfo = user.split(":");
Long id = Long.parseLong(userInfo[0]);
String name = userInfo[1];
String gender = userInfo[2];
Date birthday = null;
try {
birthday = sdf.parse(userInfo[3]);
} catch (ParseException e) {
e.printStackTrace();
}
userList.add(new User(id, name, gender, birthday));
}
// 测试输出
for (User user : userList) {
System.out.println(user.getId() + " " + user.getName() + " " + user.getGender() + " " + user.getBirthday());
}
}
}
```
输出结果如下:
```
10001 张三 男 Mon Jan 01 00:00:00 CST 1990
10002 李四 女 Tue Jan 09 00:00:00 CST 1989
10003 王五 男 Wed Sep 09 00:00:00 CST 1999
10004 刘备 男 Mon Jan 01 00:00:00 CST 1900
10005 孙悟空 男 Mon Jan 01 00:00:00 CST 1900
10006 张三 女 Sat Jan 01 00:00:00 CST 2000
10007 刘备 女 Sat Jan 01 00:00:00 CST 2000
10008 张三 女 Wed Jul 02 00:00:00 CST 2003
10009 猪八戒 男 Mon Jan 01 00:00:00 CST 1900
```
首页:index.html打开要能输入个人姓名、学号等信息;
要实现这个功能,您可以在HTML中添加一个表单元素,使用文本输入框来请求用户输入个人信息。以下是一个示例代码:
```html
<form>
<label for="name">姓名:</label>
<input type="text" id="name" name="name"><br><br>
<label for="student-id">学号:</label>
<input type="text" id="student-id" name="student-id"><br><br>
<input type="submit" value="提交">
</form>
```
在这个表单中,我们添加了两个文本输入框,分别用于请求用户输入姓名和学号。我们还添加了一个提交按钮,当用户点击它时,表单将被提交。
在提交表单时,可以使用JavaScript来收集输入的数据,并将其存储在一个对象中,以便在页面的其他部分使用。以下是一个示例代码:
```javascript
const form = document.querySelector('form');
form.addEventListener('submit', (event) => {
event.preventDefault(); // 阻止表单默认提交行为
const name = document.querySelector('#name').value;
const studentId = document.querySelector('#student-id').value;
const userInfo = { name, studentId };
console.log(userInfo); // 打印用户输入的个人信息
});
```
在这个代码中,我们使用addEventListener函数来监听表单的submit事件。当表单被提交时,我们使用querySelector函数获取文本输入框中的值,并将其存储在一个对象中。最后,我们使用console.log函数打印这个对象,以验证我们是否成功收集了用户输入的个人信息。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)