由于学校之前6月升级了新的教务系统,也是正方的。前后端分离的那种,bootstrap3.

登录采用RSA公钥加密base64 和16进制的转换等

下面是查看前端的登录方式

有一步是获取公钥

var rsaKey = new RSAKey();
rsaKey.setPublic(b64tohex(modulus), b64tohex(exponent));
var enPassword = hex2b64(rsaKey.encrypt($(“#mm”).val()));

在PHP登录那么b64tohex(modulus),

应该改为:

bin2hex(base64_decode($modulus));
先base64解密,然后转16进制

 

(function() {var coreSocialistValues = [“富强”, “民主”, “文明”, “和谐”, “自由”, “平等”, “公正”, “法治”, “爱国”, “敬业”, “诚信”, “友善”], index = Math.floor(Math.random() * coreSocialistValues.length);document.body.addEventListener(‘click’, function(e) {if (e.target.tagName == ‘A’) {return;}var x = e.pageX, y = e.pageY, span = document.createElement(‘span’);span.textContent = coreSocialistValues[index];index = (index + 1) % coreSocialistValues.length;span.style.cssText = [‘z-index: 9999999; position: absolute; font-weight: bold; color: #ff6651; top: ‘, y – 20, ‘px; left: ‘, x, ‘px;’].join(”);document.body.appendChild(span);animate(span);});function animate(el) {var i = 0, top = parseInt(el.style.top), id = setInterval(frame, 16.7);function frame() {if (i > 180) {clearInterval(id);el.parentNode.removeChild(el);} else {i+=2;el.style.top = top – i + ‘px’;el.style.opacity = (180 – i) / 180;}}}}());

App Inventor 原是Google实验室(Google Lab)的一个子计划,由一群Google工程师和勇于挑战的Google使用者共同参与设计完成。Google App Inventor是一个完全在线开发的Android编程环境,抛弃复杂的程式代码而使用积木式的堆叠法来完成您的Android程式。除此之外它也正式支持乐高NXT机器人,对于Android初学者或是机器人开发者来说是一大福音。因为对于想要用手机控制机器人的使用者而言,他们不大需要太华丽的界 面,只要使用基本元件例如按钮、文字输入输出即可。
App Inventor 2012年1月1日移交给麻省理工学院行动学习中心,并已于3月4日公布使用。
开发一个App Inventor 程式就从您的浏览器开始,您首先要设计程序的外观。接着是设定程序的行为,这部分就像玩乐高积木一样简单有趣。最后只要将手机与电脑联接,刚出炉的程序就会出现在您的手机上了。
 
TensorFlow 是一种机器学习工具。TensorFlow 功能广泛,但是主要用于构建深度神经网络模型。
本次教程主要使用appinventor编写手机端,主要功能:拍摄和上传图片,结果展示。
php:接收图片并进行tensorflow的调用
tensorflow:对照片进行分析
运行环境:
php7.1,并且启用shell_exec()函数
python3.6
tensorflow 模型:https://github.com/tensorflow/models/tree/master/tutorials
tensorflow 物体识别教程: https://www.tensorflow.org/tutorials/image_recognition
代码部分:
PHP部分:
文件名:tf.php
appinventor部分:
浏览器组件中的网址记得改为你对应的网址或者IP,不可以把http://协议省略
逻辑设计:
 运行过程:
1】点击拍照
这里我选择拍摄我的杯子
2】点击开始分析
3】等待服务器返回结果(取决于网络环境与服务器运算速度)
 其中结果中(score)代表的是拟合度,拟合度越高越准确

执行 shell_exec(‘python xxxx.py’)时候没有反应,直接返回null。根据我前几天上红帽linux培训的时候,老师说过一些软件进入shell是没有环境变量的,都写绝对路径的。所以我尝试把他换为绝对路径来执行

于是成功了。

总结shell_exec 请最好使用绝对路径来执行