1. php中关于获取表单数据$user_login 和 $_POST['user_login']那种更普遍(适用范围更广)
一般来说,
$_POST['user_login'] 当提交过来的表单的method=‘post’时,可获取到值
$_GET['user_login'] 当 表单method=‘get’时,可获取到值,
另外可以用一种方法获取表单值,而无需理会 method 为post或get,
$_REQUEST['user_login'] ,
使用哪种往往根据实际的应用环境来决定。
2. php中如何实现实时更新数据呢jQuery
网页一般是单向主动短链接,实时更新实在有些不便,即使一方掉线,另一方也不能及时感知。一般所谓的实时刷新,大多采用定时刷新(轮询),或长轮询的方式做,ajax用于更新数据确实是比较简单方便的。
轮询你就settimeout,长轮询你就每次接收数据成功后,再来一次长轮询。但你链接别人的数据,了解一下供应商的刷新机制、周期再做考虑。
当然这些都是伪实时,真的实时用http协议是不合适的,你得用flash插件做。而你用的是api供应商的东西,这条路就基本走不通了。
3. PHP如何实时获取到MYSQL中的实时数据,不考虑刷新页面
不刷新怎么获取啊,一般都是客户端向服务端轮询的吧,服务端往客户端推的话用socket连接得
4. PHP如何接收动态数据保存并实时显示到网页上
头部加上超时控制,但对于很多服务器无效,因为服务器输出超时很多在服务器控制,所以建议用cmd脚本方式运行此程序:
<?php
set_time_limit(0); //禁用脚本超时
//Createthesocketandconnect
$socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
$connection=socket_connect($socket,'116。236。128。220',14580);
//Writesometestdatatooursocket
if(!socket_write($socket,"userNoCallpass-1verstest1.0filterb/B* "))
{
echo("<p>Writefailed</p>");
}
if(!file_exists('socket_log.html')){
file_put_contents('socket_log.html','<script>
varxx=setInterval(function(){ //每5秒刷新一次页面
window.location.reload();
},5000);
</script>');
}
//Readanyresponsefromthesocket
while($buffer=socket_read($socket,64,PHP_NORMAL_READ))
{
echojson_encode($buffer);//转换为json数据输出
//记入文件
file_put_contents('socket_log.html',json_encode($buffer),FILE_APPEND);
}
echo("<p>DoneReadingfromSocket</p>");
使用方法:用命令行方式运行此脚本
phpscript.php
脚本会一直运行到接收数据结束,并持续将收到的数据写入socket_log.html文件。
在浏览器打开socket_log.html页面,此页面会自动每5秒刷新一次,来显示最新的数据。
确保程序有权限创建及写入socket_log.html文件
5. html页面获取php页面的数据
第一种:把$user的值赋值给全局数组。
第二种:header("Location: index.html"); 在这个代码传参数到index.html页面,index页面改成index.php
6. PHP 获取数据 file_get_contents() 懂得进来
GET参数是可以的,在地址后面添加文号就写参数,可以从浏览器的地址栏复制,例如下面的代码可以获得本帖子内容:
$str=file_get_contents(http://..com/question/938759799120494892.html?entry=qb_ihome_tag);
如果是POST的参数那就很麻烦了。
7. PHP实现动态读取进度,form提交与ajax提交同步,ajax实时获取form提交后的数据处理进度。
发送2个ajax请求读取2个不同的服务器页面就可以了
function submitForm(){
//第一个请求,将表单数据提交到某服务器页面
//第二个请求进度页面,也就是读取session,
}
callback是必须在等到服务器页面执行完成并输出结果后才会调用的
虽然第一个处理表单的页面可能还没全部执行完成,但是sesesion应当是已经产生了的,
而第二个请求每间隔一段时间久请求进度页面一次,读取当前的session值