python/flask 从后台接收数据,展示在前端

1.app.py文件里的路由

复制代码
 1 #获取mysql里面的数据,展示在个人用户界面
 2 @app.route('/personal_info', methods=['GET', 'POST'])
 3 def personal_info():
 4 # 获取登录路由定义的user值
 5 user = session.get('user')
 6 
 7 # 连接数据库
 8 conn = pymysql.connect(host='192.168.0.6', user='root', password='123', db='database1', charset='utf8')
 9 
10 # 拿到游标
11 cursor = conn.cursor()
12 
13 # 执行sql语句
14 sql = 'SELECT * FROM userinfo where username="%s"' % (str(user))
15 cursor.execute(sql)
16 u = cursor.fetchall()
17 
18 # 数据库和游标关闭
19 cursor.close()
20 conn.close()
21 
22 #如果没有登录,就获取不到最上面那个user,就不会执行上面的sql语句,u就没有得到值
23 #如果u没有值的话,就赋给u一个元组类型(和数据库中一样)的值,其中id只是占了一个位置(数据库第一列是id,不输出)
24 if not u :
25 u = ((id,"未登录,请登录",),)
26 
27 return render_template('personal_info.html', u=u)
复制代码

2.个人信息(前端)界面

复制代码
<div class="">
            #form表单的地址填写app.py里面的路由
            <form action="/personal_info" class="">
                <table>
                    这是一个for循环,和下面的endfor配套使用,固定格式,输出u中的值
                    {% for i in u %}
                    <tr>
                        <td>用户名:</td>
                         #这里定义一个id是为了下面写js,把一个超链接(HTML的语句)展现在用户名这个表格里面
                        <td id="is_login">{{ i[1] }}</td>
                    </tr>

                    <tr>
                        <td>性别:</td>
                        <td>{{ i[5] }}</td>
                    </tr>

                    <tr>
                        <td>出生日期:</td>
                        <td>{{ i[6] }}</td>
                    </tr>

                    <tr>
                        <td>邮箱:</td>
                        <td>{{ i[3] }}</td>
                    </tr>

                    <tr>
                        <td>联系方式:</td>
                        <td>{{ i[4] }}</td>
                    </tr>
                    {% endfor %}
                </table>
            </form>
</div>

#js,把一个超链接(HTML的语句)展现在用户名这个表格里面
<script>
    #定义一个变量a接收该id空格的内容,就是{{ i[1] }}
    a = document.getElementById("is_login").innerHTML
    // console.log("a=" + a)
    if(a=="未登录,请登录") {
        document.getElementById("is_login").innerHTML = "未登录,请<a href='login.html' target='_blank'>登录</a>"}
</script>
复制代码

3.在其他网页点击个人信息按钮,跳转到个人信息页面

#一个例子:本来data-url="personal_info.html",但是这里要登录上面的路由名称
<li class="layui-nav-item">
                <a href="javascript:;" data-url="/personal_info" data-id="16" data-text="个人信息"><i class="iconfont">&#xe606;</i>个人信息</a>
              </li>

结束,参考文章https://blog.csdn.net/vitaair/article/details/80220598

posted @   岁月神偷ll  阅读(3135)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
点击右上角即可分享
微信分享提示