模拟表单提交的例子
更新时间:2016年11月25日 15:19 点击:1650
<?php
// simple post method
// version 1.0 by Andrus (andrus@vnet.ee)
// Disclaimer:
// everyone can change or use this code however and wherever they want ;)
// NB! For posting to Microsoft platform webservers you may need to change newlines " " to " "
// Microsoft always breaks standards ...
// send out "browser" headers
function send_headers ($fp) {
fputs ($fp, "Accept: */* ");
fputs ($fp, "Accept-Language: en ");
fputs ($fp, "Connection: Keep-Alive ");
fputs ($fp, "User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98) ");
}
// post data and return reply
function post_data ($host, $url, $data) {
$fp = @fsockopen ($host, 80, $errno, $errstr, 120);
$ret = "";
if (strncasecmp ($url, "http://", 7) == 0) $url = substr ($url, 7);
$p = strpos ($url, '/');
if (empty ($p)) {
$req = "/";
} else {
$req = substr ($url, $p);
}
if ($fp) {
fputs ($fp, "POST $req HTTP/1.0 ");
send_headers ($fp);
树型论坛递归加速
一般的论坛都递归整个表
如果仅递归result,那么速度会加快不少,况且访问result是访问服务器内存.
我们一般通过下面的语句使游标移动
while($row=mysql_fetch_array($res))
其原理是当mysql_fetch_array($res)每执行一次则游标自动下移,直到结束为止
但是递归result时,我们只有一个result,当游标不定时,我们无法知道当前游标记录是否符合我们的要求
php提供了一个函数让用户自己指定游标位置
bool mysql_data_seek ( resource result_identifier, int row_number)
这个函数大家应该能看懂吧
下面我来讲讲我的思路.
为实现论坛分页,表结构设计如下:
表名:newestbbs(最新帖子 以最后回复时间排序)
结构:
id 只记录根帖的id
time 如果没有回帖,则为根帖提交时间,否则为最后回帖提交时间
表名:bbs
结构:
id 帖子本身的id
fathered 父帖id
rootid 根帖id
time 发帖时间
……….其它field
思路:
先由newestbbs得到最新帖列表(比如每页列表20条根帖 select id from newestbbs order by time limit 页数-1,20)
得到result后从整个bbs表里得到并显示所有result的根帖
while(bbs=mysql_fetch_array($result))
{
select * from bbs where rootid=bbs['id’] order by time //(由此得到第二个result,命名为res)
$root=mysql_fetch_array(res)
显示根帖
dispreplybbs($root['id’],$res) //递归显示此帖所有回帖
}
递归函数如下:
function dispreplybbs($id,$mysqlres)
{
for($i=0;$i<mysql_num_rows($mysqlres);$i++)
{
mysql_data_seek($mysqlres,$i) //将游标移动到指定位置
实战PHP/GTK(转载)
刁馋 发表于 2002-2-19 15:25 PHP编程 ←返回版面
以前PHP被认为只能用来编写服务器端的CGI程序,如果说PHP能够开发Windows下的GUI(图形用户界面)程序,你相信吗?最近,PHP的开发小组成功开发出了捆绑GTK+的PHP,那么就可以开发Windows下的GUI程序了。
一、建立PHP/GTK运行环境:
其实GUI程序和普通的PHPCGI程序没有什么区别,不过是PHP/GTK程序由GTK的类来生成GUI界面而已,他们同样是开放源代码,靠PHP来解析建立窗口。如果你已经建立好了PHP的调试环境,那么安装PHP/GTK环境比较简单:
1、下载php_gtk.dll(这个dll文件用于解析PHP源程序里面的GTK代码),下载后将其解压到PHP的扩展(extension)目录中;
2、下载其他PHP/GTK的dll文件(一共6个),将他们解压缩到Windows的system32目录里面;
3、打开php.ini,在扩展设置部分“Windows Extensions”最下面加入“extension=php_gtk.dll”的语句,建议先备份php.ini,避免修改失败使得建立好的PHP运行环境作废;
现在就建立好了PHP/GTK的运行环境了。当然,你也可以不作第二步,而改为在每个PHP/GTK程序源代码的第一行加入“dl('php_gtk.dll')”来动态加载GTK的支持。
如果你还没有建立PHP运行环境,那么安装要更加简单:
1、下载整个PHP/GTK的捆绑支持包,然后将他们解压缩到c盘的PHP4目录下面;
2、将winnt目录下面的dll文件拷贝到Windows的system32目录中,将php.ini文件拷贝到Windows的目录中;
建立好了PHP/GTK的运行后,可以用命令行模式的PHP来运行一个PHP/GTK程序:在运行中输入“c:php4php -q gtkprogrampath”,其中“c:php4php”改为PHP.EXE的路径,“gtkprogrampath”就是PHP/GTK程序的路径。比如:“c:php4php -q c:php4sampleshello.php”将会运行PHP/GTK运行包中附带的例子“hello world”程序。
二、编译PHP/GTK程序:
如果你作出一个PHP/GTK的应用程序,还需要对方的电脑建立PHP的运行环境并且使用PHP命令行模式来解析才可以执行的话,那就过于复杂了。那么怎么样才可以编译一个PHP/GTK的程序呢?经过一番搜索,笔者发现了PHPCompiler这个软件。
PHPCompiler由www.deskcode.com开发(http://www.deskcode.com/phpcompiler),可以将PHP编译成为EXE可执行文件,内置了PHP的支持,如果你要编译一个PHP/GTK程序,必须建立PHP/GTK的运行环境(参照前面的步骤)。要编译一个PHP/GTK程序的步骤如下:
生成缩略图
$tx=GetImageSize($sample);
if($tx[0]<=$tx[1] and $tx[1]>=120){
$height=120;
$width=intval($height*$tx[0]/$tx[1]);
}
if($tx[0]>=$tx[1] and $tx[0]>=100){
$width=100;
$height=intval($width*$tx[1]/$tx[0]);
}
if($tx[0]<100 and $tx[1]<120){
$width=$tx[0];
$height=$tx[1];
}
makethumb2($sample,$target,$width,$height);
// $srcFile: 源文件
// $dstFile: 目标文件
// $dstW: 目标图片宽度
// $dstH: 目标文件高度
function makethumb2($srcFile,$dstFile,$dstW,$dstH){
$data=GetImageSize($srcFile,&$info);
switch($data[2]){
case 1:
$im=@ImageCreateFromGIF($srcFile);
break;
case 2:
模拟xcopy的函数
<?php
/*************************************
* 系统名称:模拟xcopy的函数
* 程序功能:模拟xcopy的函数
* 开发日期:2003/03/14
*************************************/
?>
<?
//copy a direction’s all files to another direction
function xCopy($source, $destination, $child){
//用法:
// xCopy("feiy","feiy2",1):拷贝feiy下的文件到 feiy2,包括子目录
// xCopy("feiy","feiy2",0):拷贝feiy下的文件到 feiy2,不包括子目录
//参数说明:
// $source:源目录名
// $destination:目的目录名
// $child:复制时,是不是包含的子目录
if(!is_dir($source)){
echo("Error:the $source is not a direction!");
return 0;
}
if(!is_dir($destination)){
mkdir($destination,0777);
}
$handle=dir($source);
while($entry=$handle->read()) {
if(($entry!=".")&&($entry!="..")){
if(is_dir($source."/".$entry)){
if($child)
xCopy($source."/".$entry,$destination."/".$entry,$child);
}
else{
copy($source."/".$entry,$destination."/".$entry);
}
}
}
return 1;
}
?>
// simple post method
// version 1.0 by Andrus (andrus@vnet.ee)
// Disclaimer:
// everyone can change or use this code however and wherever they want ;)
// NB! For posting to Microsoft platform webservers you may need to change newlines " " to " "
// Microsoft always breaks standards ...
// send out "browser" headers
function send_headers ($fp) {
fputs ($fp, "Accept: */* ");
fputs ($fp, "Accept-Language: en ");
fputs ($fp, "Connection: Keep-Alive ");
fputs ($fp, "User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98) ");
}
// post data and return reply
function post_data ($host, $url, $data) {
$fp = @fsockopen ($host, 80, $errno, $errstr, 120);
$ret = "";
if (strncasecmp ($url, "http://", 7) == 0) $url = substr ($url, 7);
$p = strpos ($url, '/');
if (empty ($p)) {
$req = "/";
} else {
$req = substr ($url, $p);
}
if ($fp) {
fputs ($fp, "POST $req HTTP/1.0 ");
send_headers ($fp);
树型论坛递归加速
一般的论坛都递归整个表
如果仅递归result,那么速度会加快不少,况且访问result是访问服务器内存.
我们一般通过下面的语句使游标移动
while($row=mysql_fetch_array($res))
其原理是当mysql_fetch_array($res)每执行一次则游标自动下移,直到结束为止
但是递归result时,我们只有一个result,当游标不定时,我们无法知道当前游标记录是否符合我们的要求
php提供了一个函数让用户自己指定游标位置
bool mysql_data_seek ( resource result_identifier, int row_number)
这个函数大家应该能看懂吧
下面我来讲讲我的思路.
为实现论坛分页,表结构设计如下:
表名:newestbbs(最新帖子 以最后回复时间排序)
结构:
id 只记录根帖的id
time 如果没有回帖,则为根帖提交时间,否则为最后回帖提交时间
表名:bbs
结构:
id 帖子本身的id
fathered 父帖id
rootid 根帖id
time 发帖时间
……….其它field
思路:
先由newestbbs得到最新帖列表(比如每页列表20条根帖 select id from newestbbs order by time limit 页数-1,20)
得到result后从整个bbs表里得到并显示所有result的根帖
while(bbs=mysql_fetch_array($result))
{
select * from bbs where rootid=bbs['id’] order by time //(由此得到第二个result,命名为res)
$root=mysql_fetch_array(res)
显示根帖
dispreplybbs($root['id’],$res) //递归显示此帖所有回帖
}
递归函数如下:
function dispreplybbs($id,$mysqlres)
{
for($i=0;$i<mysql_num_rows($mysqlres);$i++)
{
mysql_data_seek($mysqlres,$i) //将游标移动到指定位置
实战PHP/GTK(转载)
刁馋 发表于 2002-2-19 15:25 PHP编程 ←返回版面
以前PHP被认为只能用来编写服务器端的CGI程序,如果说PHP能够开发Windows下的GUI(图形用户界面)程序,你相信吗?最近,PHP的开发小组成功开发出了捆绑GTK+的PHP,那么就可以开发Windows下的GUI程序了。
一、建立PHP/GTK运行环境:
其实GUI程序和普通的PHPCGI程序没有什么区别,不过是PHP/GTK程序由GTK的类来生成GUI界面而已,他们同样是开放源代码,靠PHP来解析建立窗口。如果你已经建立好了PHP的调试环境,那么安装PHP/GTK环境比较简单:
1、下载php_gtk.dll(这个dll文件用于解析PHP源程序里面的GTK代码),下载后将其解压到PHP的扩展(extension)目录中;
2、下载其他PHP/GTK的dll文件(一共6个),将他们解压缩到Windows的system32目录里面;
3、打开php.ini,在扩展设置部分“Windows Extensions”最下面加入“extension=php_gtk.dll”的语句,建议先备份php.ini,避免修改失败使得建立好的PHP运行环境作废;
现在就建立好了PHP/GTK的运行环境了。当然,你也可以不作第二步,而改为在每个PHP/GTK程序源代码的第一行加入“dl('php_gtk.dll')”来动态加载GTK的支持。
如果你还没有建立PHP运行环境,那么安装要更加简单:
1、下载整个PHP/GTK的捆绑支持包,然后将他们解压缩到c盘的PHP4目录下面;
2、将winnt目录下面的dll文件拷贝到Windows的system32目录中,将php.ini文件拷贝到Windows的目录中;
建立好了PHP/GTK的运行后,可以用命令行模式的PHP来运行一个PHP/GTK程序:在运行中输入“c:php4php -q gtkprogrampath”,其中“c:php4php”改为PHP.EXE的路径,“gtkprogrampath”就是PHP/GTK程序的路径。比如:“c:php4php -q c:php4sampleshello.php”将会运行PHP/GTK运行包中附带的例子“hello world”程序。
二、编译PHP/GTK程序:
如果你作出一个PHP/GTK的应用程序,还需要对方的电脑建立PHP的运行环境并且使用PHP命令行模式来解析才可以执行的话,那就过于复杂了。那么怎么样才可以编译一个PHP/GTK的程序呢?经过一番搜索,笔者发现了PHPCompiler这个软件。
PHPCompiler由www.deskcode.com开发(http://www.deskcode.com/phpcompiler),可以将PHP编译成为EXE可执行文件,内置了PHP的支持,如果你要编译一个PHP/GTK程序,必须建立PHP/GTK的运行环境(参照前面的步骤)。要编译一个PHP/GTK程序的步骤如下:
生成缩略图
$tx=GetImageSize($sample);
if($tx[0]<=$tx[1] and $tx[1]>=120){
$height=120;
$width=intval($height*$tx[0]/$tx[1]);
}
if($tx[0]>=$tx[1] and $tx[0]>=100){
$width=100;
$height=intval($width*$tx[1]/$tx[0]);
}
if($tx[0]<100 and $tx[1]<120){
$width=$tx[0];
$height=$tx[1];
}
makethumb2($sample,$target,$width,$height);
// $srcFile: 源文件
// $dstFile: 目标文件
// $dstW: 目标图片宽度
// $dstH: 目标文件高度
function makethumb2($srcFile,$dstFile,$dstW,$dstH){
$data=GetImageSize($srcFile,&$info);
switch($data[2]){
case 1:
$im=@ImageCreateFromGIF($srcFile);
break;
case 2:
模拟xcopy的函数
<?php
/*************************************
* 系统名称:模拟xcopy的函数
* 程序功能:模拟xcopy的函数
* 开发日期:2003/03/14
*************************************/
?>
<?
//copy a direction’s all files to another direction
function xCopy($source, $destination, $child){
//用法:
// xCopy("feiy","feiy2",1):拷贝feiy下的文件到 feiy2,包括子目录
// xCopy("feiy","feiy2",0):拷贝feiy下的文件到 feiy2,不包括子目录
//参数说明:
// $source:源目录名
// $destination:目的目录名
// $child:复制时,是不是包含的子目录
if(!is_dir($source)){
echo("Error:the $source is not a direction!");
return 0;
}
if(!is_dir($destination)){
mkdir($destination,0777);
}
$handle=dir($source);
while($entry=$handle->read()) {
if(($entry!=".")&&($entry!="..")){
if(is_dir($source."/".$entry)){
if($child)
xCopy($source."/".$entry,$destination."/".$entry,$child);
}
else{
copy($source."/".$entry,$destination."/".$entry);
}
}
}
return 1;
}
?>
上一篇: 树型论坛递归加速
下一篇: 实战PHP/GTK(转载)
相关文章
- artDialog是一个基于javascript编写的对话框组件,它拥有精致的界面与友好的接口。本文给大家介绍JS中artdialog弹出框控件之提交表单思路详解,对本文感兴趣的朋友一起学习吧...2016-04-19
- 如果我们的项目需要做来电及短信的功能,那么我们就得在Android模拟器开发这些功能,本来就来告诉我们如何在Android模拟器上模拟来电及来短信的功能。 在Android模拟...2016-09-20
- 这篇文章主要为大家详细解析了BootStrap栅格系统、表单样式与按钮样式源码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2017-01-23
- 有时候我们为了省事就操作键盘组合键去代替使用鼠标,我们今天就使用JQuery实现Ctrl+Enter提交表单。我们发帖时,在内容输入框中输入完内容后,可以点击“提交”按钮来发表内容。可是,如果你够“懒”,你可以不用动鼠标,只需按...2015-10-23
- 夜神android模拟器如何设置代理呢?对于这个问题其实操作起来是非常的简单,下面小编来为各位详细介绍夜神android模拟器设置代理的方法,希望例子能够帮助到各位。 app...2016-09-20
PHP函数分享之curl方式取得数据、模拟登陆、POST数据
废话不多说直接上代码复制代码 代码如下:/********************** curl 系列 ***********************///直接通过curl方式取得数据(包含POST、HEADER等)/* * $url: 如果非数组,则为http;如是数组,则为https * $header:...2014-06-07- 下面小编就为大家带来一篇C#模拟http 发送post或get请求的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
- 为了网站的安全性,很多朋友都把密码设的比较复杂,但是如何密码不能明显示,不知道输的是对是错,为了安全起见可以把密码显示的,那么基于js代码如何实现的呢?下面通过本文给大家介绍JavaScript实现表单密码的隐藏和显示,需要的朋友参考下...2016-03-03
- 这篇文章主要介绍了vue项目,代码提交至码云,iconfont的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-30
JQuery form表单提交前验证单选框是否选中、删除记录时验证经验总结(整理)
这篇文章主要介绍了JQuery form表单提交前验证单选框是否选中、删除记录时验证经验总结,非常不错,具有参考借鉴价值,需要的朋友参考下吧...2017-06-15- 这篇文章主要介绍了angularjs $http实现form表单提交示例,非常具有实用价值,需要的朋友可以参考下 ...2017-06-15
用Intel HAXM给Android模拟器Emulator加速
Android 模拟器 Emulator 速度真心不给力,, 现在我们来介绍使用 Intel HAXM 技术为 Android 模拟器加速,使模拟器运行度与真机比肩。 周末试玩了一下在Eclipse中使...2016-09-20- 这篇文章主要介绍了react使用antd表单赋值,用于修改弹框的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-10-29
- 在html表单提交中method请求Get和Post区别其实很显示的,get提交会是url形式的并且数据量不能太多,而post数据是在浏览器url看不到的并且可以是大数据量而且get安全性非...2016-09-20
- 这篇文章主要介绍了微信小程序 PHP后端form表单提交实例详解的相关资料,需要的朋友可以参考下...2017-01-16
- 本篇文章主要介绍了vue2 中如何实现动态表单增删改查实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ...2017-06-15
- 本文介绍在表单提交之前修改提交的值的方法,希望给需要的朋友一些帮助。...2016-04-17
- 这篇文章主要介绍了解决antd Form 表单校验方法无响应的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-10-28
- 这篇文章主要介绍了C# 模拟浏览器并自动操作的实例代码,文中讲解非常细致,帮助大家更好的理解和学习,感兴趣的朋友可以了解下...2020-11-03
- 本教程的主要内容是运行两个Android模拟器,然后在这两个模拟器如何实现互相收发短信的功能,这个功能可以说是非常实现的,可以应用app短信实例中。 本文通过运行两个A...2016-09-20