찾다
php教程php手册PHP微信公众开发笔记(六)

PHP微信公众开发笔记(六)

PHP微信公众开发笔记系列
日期:2014.9.4


今天主要是完善了搜索,加入了管理员模块,优化了身份验证,将学生信息管理封装为了一个类(整这个真是好累呀,主要是数据库操作那里语法老是出问题,一直是各种小问题)


感受:
PHP开发没有断点、不能及时打印log真是好累呀(我是用sublime写的,然后直接微信公众号调试,累屎我了),错误信息经常不能及时发觉、或者说有些问题能通过断点排除掉了没能够排除。但是也说明了,我写代码还是太马虎了啊。

2014.9.10整理笔记:
写这个笔记的时候,在赶功能,所以也就是简单的记几笔当时的工作内容,现在功能开发得差不多了,就来整理之前的笔记。

在笔记五中我提到了,将公众平台上需要实现的一些功能按类型进行了分类处理:菜单、数据库都抽离出来了。这样做的好处就是在今后我做功能调整或者新增功能不会影响现有的功能,利于开发维护。
在笔记四中提到了在SAE上我搭建了一个云端数据库,并做了一个简单的数据检索功能(在菜单-查询菜单中回复姓名,或者学号便能得到对应的相关信息),在同学的建议下,需要快捷查找信息,因此在这里实现了一个我称之为快捷检索的功能:用户回复姓名+电话、姓名+老家、姓名+地址便可以得到对应的相关信息;这个功能的实现也是建立在对数据库的检索和关键词监测的基础之上的。

一、完善搜索

在这里为了维护方便,封装了一个学生信息管理的类,也就是对之前提到的数据库管理进行一个包装,因为我当时是想到了后期可能会有更多的数据库需求,后期的开发维护需求会更高;因此现阶段数据库处理的相关文件有:



1、student_info_sql.class.php 也就是对mysql_sae.func.php的一层包装:

1)在mysql_sae.func.php中提供对数据库操作的语句,函数接受相关的参数喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGltZyBzcmM9"http://www.2cto.com/uploadfile/Collfiles/20140912/2014091209043830.png" alt="\">


2)然后我在student_info_sql.class.php的使用过程中,传递对应的参数过去就可



而且这样一层包装,就可以保证我可以自由控制需要显示的信息,即我显示学生信息就再这里控制显示,当我需要弄一个关键词之类的数据表,那么我就只需要新建一个对应的php文件,然后在该文件中控制格式就可以了;

在这里提一下上上图中出现的sae_log()函数,这个函数也是查找网上的资料得到的一个打印log而包装出来的:



我这样包装的目的在于,假如某天我不需要打印log了,直接注释掉这里就可以了。
包装的这个student数据库管理类也是提供诸如检索、添加等的操作。这里也没什么需要额外笔记的。

2、然后就是提到的优化数据检索了,也就是根据同学提出的需求---能快捷检索到信息,这里的关键点就是关键词捕获了,这里便是使用到了php中对字符串相关处理函数的使用:
strstr()、str_replace() 我主要是使用到了这两个;第一个函数用来判断给定字符串中某个特定字符是否出现,第二个函数用来做字符替换。

在用户发送消息过来的时候,我这样做了处理:



对这三个关键词进行处理,如果用户发送过来的消息有这三个关键词,然后用str_replace,将关键词替换为空,就得到了姓名,那么就会有相应的响应操作。上图中出现的check_userinfo是我用来做用户身份验证的;menu_Distribution_Center即我之前提到的整理菜单功能而封装的一个函数,菜单分发。在独立封装的基础之上,我只需要捕获关键词,然后调用已实现的查询菜单的相关功能便很快的就实现了这个功能。功能实现上很简单,当时遇到的问题就主要是诸如php语法问题、数据库语法问题,各种坑,也体现了我这个人有的时候马大哈,写代码的时候太马虎,还有就是php毕竟没有系统的学过,直接是边写代码边学习的,所以难免会碰到各种问题。

二、添加管理员模块
因为有的时候没有用电脑,而此时又需要操作如数据库信息更新之类的,该怎么办?我就想到了可以实现一个管理员功能,在验证身份的条件下,可以通过发送特定指令而实现相应的功能。我实现的具体思路是,封装成一个类,一个统一的入口,然后身份验证。因此我新建了一个称之为admin_sys.class.php的文件,封装成了一个类,有了统一的入口之后,假如我之后有新的需求,那么我也只需要在这个类里面添加就可以了,不会影响到别的系统功能:

1、一个统一的入口:



2、在这里实现的验证功能和之前实现的用户身份验证类似,也是使用到了$_SESSION进行信息保存:



先判断是否验证了管理员身份,验证了之后就进入到具体的操作环节,具体的操作环境也是根据相对应的指令进行操作的。这里也就不提了,实现了这个管理员功能是挺便捷的,我可以很方便的更新用户信息、添加用户信息等。
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경