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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM