php传数据给客户端 php接收数据
关于php如何传递数据
看了你的问题,我有点晕,本来是很困的,现在更困了。
创新互联2013年开创至今,先为独山子等服务建站,独山子等地企业,进行企业商务咨询服务。为独山子企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
我觉得,你这不就是一个正常的网站吗?也没什么值需要传呐?
你的登录页面向admin.php传值这个简单,直接用form表单就可以搞定了;
验证的页面完全可以和dir.php合并嘛,登录的话都是用session或cookie完成的,反正你的每个页面都必须要做这一步,直接合并就OK
另外你的dir.php就是一个正常了网页了,也就是用户需要浏览的页面对吧?那你点了对应的链接就链接不同的页面,这个不是太简单了吗?不同的页面去取不同的数据表,神马大型的网站都是这么干的呀!
另外,要和你说的是,安全不安全不是列出了什么,重要的是你列出来的东西不要包含你的字段名,这才是影响安全的重要因素,你可以通过PHP把它转换呐,PHP不就是做这个转换的吗?PHP的功能是神马?就是做这个的呀。
另外,如果你是动态页面,使用链接跳转页面,就必须用?+信息的方式,当然,我说的是初学,如果你学得深入了,可以用伪静态,更可以用纯静态,这个先不说,先把页面间通过get传值弄通,你就学会PHP了,也就是说,你正式进入了PHP的大门。
不行了,熬不住了,睡觉去了.............
如何在php后端及时推送消息给客户端?
使用以下代码可以更改设置。
后端代码
push.php
?php
use Workerman\Worker;
require_once './Workerman/Autoloader.php';
$worker = new Worker('websocket://0.0.0.0:1234');
// 这里进程数必须设置为1
$worker-count = 1;
// worker进程启动后建立一个内部通讯端口
$worker-onWorkerStart = function($worker)
{
// 开启一个内部端口,方便内部系统推送数据,Text协议格式 文本+换行符 $inner_text_worker = new Worker('Text://0.0.0.0:5678');
$inner_text_worker-onMessage = function($connection, $buffer)
{
global $worker;
// $data数组格式,里面有uid,表示向那个uid的页面推送数据
$data = json_decode($buffer, true);
$uid = $data['uid'];
// 通过workerman,向uid的页面推送数据
$ret = sendMessageByUid($uid, $buffer);
// 返回推送结果
$connection-send($ret ? 'ok' : 'fail');
};
$inner_text_worker-listen();
};
// 新增加一个属性,用来保存uid到connection的映射
$worker-uidConnections = array();
// 当有客户端发来消息时执行的回调函数$worker-onMessage = function($connection, $data)use($worker)
{
// 判断当前客户端是否已经验证,既是否设置了uid
if(!isset($connection-uid))
{
// 没验证的话把第一个包当做uid(这里为了方便演示,没做真正的验证)
$connection-uid = $data;
/* 保存uid到connection的映射,这样可以方便的通过uid查找connection,
* 实现针对特定uid推送数据
*/
$worker-uidConnections[$connection-uid] = $connection;
return;
}
};
// 当有客户端连接断开时
$worker-onClose = function($connection)use($worker)
{
global $worker;
if(isset($connection-uid))
{
// 连接断开时删除映射
unset($worker-uidConnections[$connection-uid]);
}
};
// 向所有验证的用户推送数据
function broadcast($message)
{
global $worker;
foreach($worker-uidConnections as $connection)
{
$connection-send($message);
}
}
// 针对uid推送数据
function sendMessageByUid($uid, $message)
{
global $worker;
if(isset($worker-uidConnections[$uid]))
{
$connection = $worker-uidConnections[$uid];
$connection-send($message);
return true;
}
return false;
}
// 运行所有的worker(其实当前只定义了一个)
Worker::runAll();
启动后端服务
php push.php start -d
前端接收推送的js代码
var ws = new WebSocket('ws://127.0.0.1:1234');
ws.onopen = function(){
var uid = 'uid1';
ws.send(uid);
};
ws.onmessage = function(e){
alert(e.data);
};后端推送消息的代码
// 建立socket连接到内部推送端口
$client = stream_socket_client('tcp://127.0.0.1:5678', $errno, $errmsg, 1, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT);
// 推送的数据,包含uid字段,表示是给这个uid推送
$data = array('uid'='uid1', 'percent'='88%');
// 发送数据,注意5678端口是Text协议的端口,Text协议需要在数据末尾加上换行符
fwrite($client, json_encode($data)."\n");
// 读取推送结果
echo fread($client, 8192);这里的uid不一定是用户的id,也可以理解为任务id即 taskid
Php通过get post获取app上传的参数,那php怎么提供数据给app呢
app可以直接发送http请求给服务器,然后php程序处理完之后,输出数据到一个页面,app获得这个页面就可以解析里面的数据。关于这个页面数据交换格式有很多成熟的方式,比如 xml,json。
参考:
本地搭建的PHP环境中的数据怎样传到正式的服务器上
问题真多啊,总结一下,你就是想知道,在本搭写好的 php 程序与数据怎么弄到线上服务器上。两边环境不一样有没有关系。还有php安全问题。
发布php网站问题:
php 程序只需要用 FTP 之类的工具,上传到服务器的 www 目录下即可,这一步并没什么特别的。数据问题,使用任意一种数据库管理程序,将数据从本地导出以后,再用相同的方式,导入线上服务器的数据库中即可。比如 phpmyadmin 在线导入导出工具,当然,服务器上你也得传一份 phpmyadmin 才行。php 程序连接数据库的配置部份当然得改一下。如果你本地数据库的用户名密码与服务器上的相同,那就不用改了。
关于环境版本问题:
近几年的 php 版本变化比较大,有些语法特点是新版才能使用的,有些旧版函数被废弃。只要你不急着使用太新的语法,也不要使用手册中声明弃用的函数。一般没什么问题。数据库方面的区别不太大,基本上没什么不兼容的。
安全问题:
这个说来话长了,矛与盾的问题。没有绝对的矛和盾。对于一些常见的,已知的问题,做好处理就可以了。剩下的安全问题,更多是你程序设计时有没有漏洞罢了。
PHP与PHP数据传输
这需要用ajax来实现
index.php
html
titlephp+jquery+ajax+json简单小例子/title
?php
header("Content-Type:text/html;charset=utf-8");
?
head
script type="text/javascript" src="
script type="text/javascript"
$(function() {
$("#subbtn").click(function() {
var params = $("input").serialize();
var url = "1.php";
$.ajax({
type: "post",
url: url,
dataType: "json",
data: params,
success: function(msg){
var backdata = "您提交的姓名为:" + msg.name +
"br / 您提交的密码为:" + msg.password;
$("#backdata").html(backdata);
$("#backdata").css({color: "green"});
}
});
});
});
/script
/head
body
plabel for="name"姓名:/label
input id="name" name="name" type="text" /
/p
plabel for="password"密码:/label
input id="password" name="password" type="password" /
/p
span id="backdata"/span
pinput id="subbtn" type="button" value="提交数据" //p
/body
/html
1.php代码:
?php
//接收数据-处理数据-返回数据
echo json_encode($_POST);
?
PHP传递一个Flag标志给Android客户端用来判断注册的时候用户名是否已经存在该如何进行数据传递
这个很简单了,php 这边写一个接口,然后android的那边访问这个接口就可以了,接口返回值用json封装,然后android那边把json提取出来就可以了
技术支持:论文第9区,专业的网站做专业的事
网站名称:php传数据给客户端 php接收数据
网页网址:http://myzitong.com/article/hhpdhe.html