关于sql注入的问题

关于sql注入的问题其实有很多种。这只是其中俩种方法。在python中使用的。不管前端是否有js校验,传入的数据都默认是不安全的数据。

import pymysql
import re
# import sqlalchemy

# todo  创建连接
con = pymysql.connect(host='localhost',user='root',password='mysql',database='shanghui',port=3306,charset='utf8')
# host=None, user=None, password="",database=None, port=0
print(con)


# todo 获取操作句柄
cur = con.cursor()

#查询一条数据
id_vlaue = input('请输入需要查询的id值')

# # 方法1 用正则匹配
# ret = re.match(r'\d+','324asd')
# print(ret.group())

# 方法2  参数列表化
sql = 'select * from goods where goods.id > %s'
print(sql)
ret = cur.execute(sql,[id_vlaue])
print(ret)
或
sql=cur.execute('select * from goods where goods.id=%s',[id_vlaue])


# for i in range(ret):
#     ret_sql = cur.fetchone()
#     print(ret_sql)

print('$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$')

ret_sql2 = cur.fetchall()
print(ret_sql2)

cur.close()
con.close()
先关句柄再关闭连接
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值