利用js调用后台php进行数据处理原码


Posted in PHP onOctober 09, 2006

?方法已??凫哆^?r方法,其中??的地方也?恼???系?淼模?抑皇前阉????蘸笾匦滦戳烁??娴某隼础9?汲?碇皇窍M??嗟男率帜?闹?W到一些?|西。如果你?υ?代?有任何意?可以留言,但?勿?行人身攻?簦?沂且??菜?只能??出??拥?|西,每个老鸟都有这样的过程。

鉴于时间问题,代?的提交部分使用的是传统的表单POST,如果您喜欢可以根据LOAD过程自行加上相应的SCRIPT,不过好像只
能用GET了。??XML可以???真正的?o刷新,如果?手上有希望能借?砜纯础?/P>

在此感?QQ群?中蓝?ρ┖??helly水在JS上?予的?椭??残率??能把自己??的功能代??出?泶蠹乙黄??W?研究。

最後附上演示地址:http://lfox0002.dns0755.net/text_input.php ?喜?gHACK他人?C器的朋友??手下留情,附上演示是?榱俗?朋友??能更快了解代?。

input.php[HTML] 接受用户输入数据。

PHP代码:----------------------------------------------

<?php
/*
                         申        明
                 ------------------------------
  该演示文件详细描述了利用JS+PHP对数据库进行?似?o刷新读出写入的方法

                                           2004年02月14日
                                                 By L.Fox
                                                             */

header("Cache-Control: no-store, no-cache,must-revalidate");   //??尚锌梢匀∠??盐募?娉?TML
echo $_POST["name1"];                                          //我是?榱?#123;?方便才加的。
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=??????">
<title>根据编号从MYSQL提取数据进行编辑并回存[演示]</title>
<script language="JavaScript" id="LoadDataSrc"></script>
<style>
body {
    font-family: "Verdana", "Arial", "Helvetica", "sans-serif";
    font-size: 12px;
    line-height: 17px;
    scrollbar-base-color: #BBBBBB;
    scrollbar-shadow-color: #BBBBBB;
    scrollbar-highlight-color: #FFFFFF;
    scrollbar-3dlight-color: #000000;
    scrollbar-darkshadow-color: #000000;
    scrollbar-arrow-color: #FFFFFF;
}
table {
    border: 0;
    font-size: 12px;
    cursor: default;
}
td {
    text-align: left;
    height: 20;
}
input {
    width: 100;
    height: 18;
    border: 0px solid #666666;
    text-align: left;
}
</style>
<script>
var objInput = null;
var objTd = null;
var num =null;
function AutoEdit(obj,id)
{
    if (objInput == null)
    {
        objTd = obj;
        obj.innerHTML = "<input size=\"10\" maxlength=\"10\" type=\"text\" value=\"" + obj.innerText + "\"
id=\"objInput\" onblur=\"objTd.innerText=this.value;LoadData(objTd.innerText,num);objInput=null;\" style=\"overflow:
visible;border:none;background-color:#EFEFEF\">";
        objInput = document.getElementById("objInput");
        objInput.focus();
    }
}

function LoadData(LoadIndex,LoadObj)
{
  var LoadFileName="load.php?action=" + LoadIndex + "&num=" + LoadObj;
  document.getElementById("LoadDataSrc").src = LoadFileName;
}
function OutPutData(obj)
{
    if (form1.num1.value.length<1){ alert("请输入数量1"); return false;}
    if (form1.num2.value.length<1){ alert("请输入数量2"); return false;}
    if (document.getElementById("name1").innerHTML.length<1){ alert("name1空值"); return false;}
    if (document.getElementById("name2").innerHTML.length<1){ alert("name2空值"); return false;}
    obj.innerHTML="<input type=\"hidden\" name=\"name1\" value=\"" + document.getElementById("name1").innerHTML + "\">";
    obj.innerHTML+="<input type=\"hidden\" name=\"name2\" value=\"" + document.getElementById("name2").innerHTML + "\">";
    obj.innerHTML+="<input type=\"hidden\" name=\"type1\" value=\"" + document.getElementById("type1").innerHTML + "\">";
    obj.innerHTML+="<input type=\"hidden\" name=\"type2\" value=\"" + document.getElementById("type2").innerHTML + "\">";
    obj.innerHTML+="<input type=\"hidden\" name=\"date1\" value=\"" + document.getElementById("date1").innerHTML + "\">";
    obj.innerHTML+="<input type=\"hidden\" name=\"date2\" value=\"" + document.getElementById("date2").innerHTML + "\">";
    obj.innerHTML+=form1.submit();
}
function postdata()
{
  form1.submit();   
}
</script>
</head>
<body>
<form name="form1" method="post" action="load.php?action=OutPutData">
<table width="400" cellpadding="0" cellspacing="1" align="center" bgcolor="#999999">
 <tr bgcolor="#EFEFEF">
  <td onclick="AutoEdit(this,num=1)" style="width: 200px;overflow:visible;word-break:break-all;"><div></div></td>
  <td onclick="AutoEdit(this,num=2)" style="width: 200px;overflow:visible;word-break:break-all;"><div></div></td>
 </tr>
 <tr bgcolor="#EFEFEF">
  <td><div id="name1" style="width: 200px;overflow:visible;word-break:break-all;">a</div></td>
  <td><div id="name2" style="width: 200px;overflow:visible;word-break:break-all;">b</div></td>
 </tr>
 <tr bgcolor="#EFEFEF">
  <td><div id="type1" style="width: 200px;overflow:visible;word-break:break-all;">a</div></td>
  <td><div id="type2" style="width: 200px;overflow:visible;word-break:break-all;">b</div></td>
 </tr>
 <tr bgcolor="#EFEFEF">
  <td><div id="date1" style="width: 200px;overflow:visible;word-break:break-all;"></div></td>
  <td><div id="date2" style="width: 200px;overflow:visible;word-break:break-all;"></div></td>
 </tr>
 <tr bgcolor="#EFEFEF">
  <td><div><input type="text" name="num1" value=""></div></td>
  <td><div><input type="text" name="num2" value=""></div></td>
 </tr>
 <div id="OutPutData"><a href="#" onclick="java script:OutPutData(this);">输出</a></div></form>
</body>
</html>
------------------------------------------------------

LOAD.php

PHP代码:-----------------------------------------------

<?php
header("Cache-Control: no-store, no-cache,must-revalidate");
include("obj/financial_obj_free.inc");          //这个文件里的内容是连接MYSQL的语句。
$str=$_GET["action"];
$num=$_GET["num"];
if ($str=="OutPutData") OutPutData();
else
  {
    linkdata("financial",1);
    $sql="select * from table where id='$str'";
    if ($query=mysql_query($sql))
       {
         $temdata=mysql_fetch_row($query);         //看看是不是空的,如果是就附上值以免JS报错。
         if (strlen($temdata[2])<1||$temdata[2]=="") $temdata[2]="空";
            $temdata[2]=htmlspecialchars($temdata[2]);
         if (strlen($temdata[3])<1||$temdata[3]=="") $temdata[3]="空";
            $temdata[3]=htmlspecialchars($temdata[3]);
         if (strlen($temdata[5])<1||$temdata[5]=="") $temdata[5]="空";
            $temdata[5]=htmlspecialchars($temdata[5]);
       }
    else
       {
         $temdata[2]=$temdata[3]=$temdata[5]="查询失败";
       }
    switch ($num)   //这个主要是用于检查是从第几列(行)传过来的。注意变量值要与input的id值对应好.否则出错
       {
         case 1:
           $diva="name1";
           $divb="type1";
           $divc="date1";
         break;
         case 2:
           $diva="name2";
           $divb="type2";
           $divc="date2";
         break;
         default:
           $diva="name1";
           $divb="type1";
           $divc="date1";
         break;
       }
        //确定节点,输出$temdata[X]到节点$divX;
    echo "document.getElementById('".$diva."').innerHTML='".$temdata[2]."';";
    echo "document.getElementById('".$divb."').innerHTML='".$temdata[3]."';";
    echo "document.getElementById('".$divc."').innerHTML='".$temdata[5]."';";
  }

function OutPutData() //这下面如果改成SQL语句就可以写进数据库
{
   echo "输出的数据如下,改成SQL语句然后就可以保存下来";
   echo "编号1=".$_POST["name1"]."<br>";
   echo "编号2=".$_POST["name2"]."<br>";
   echo "名称1=".$_POST["type1"]."<br>";
   echo "名称2=".$_POST["type2"]."<br>";
   echo "日期1=".$_POST["date1"]."<br>";
   echo "日期2=".$_POST["date2"]."<br>";
   echo "数量1=".$_POST["num1"]."<br>";
   echo "数量2=".$_POST["num2"]."<br>";  
   echo "<a href=\"text_input.php\">返回</a>";
}
?>

 

PHP 相关文章推荐
实现树状结构的两种方法
Oct 09 PHP
用PHP查询域名状态whois的类
Nov 25 PHP
PHP 读取文件内容代码(txt,js等)
Dec 06 PHP
按上下级层次关系输出内容的PHP代码
Jul 17 PHP
PHP数据库操作之基于Mysqli的数据库操作类库
Apr 19 PHP
php中time()与$_SERVER[REQUEST_TIME]用法区别
Nov 19 PHP
深入理解PHP内核(一)
Nov 10 PHP
php英文单词统计器
Jun 23 PHP
详解Yii实现分页的两种方法
Jan 14 PHP
PHP实现的策略模式简单示例
Aug 25 PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
Oct 22 PHP
yii框架结合charjs统计上一年与当前年数据的方法示例
Apr 04 PHP
PHP初学者头疼问题总结
Oct 09 #PHP
php代码优化及php相关问题总结
Oct 09 #PHP
PHP数据库开发知多少
Oct 09 #PHP
一次编写,随处运行
Oct 09 #PHP
PHPShop存在多个安全漏洞
Oct 09 #PHP
配置最新的PHP加MYSQL服务器
Oct 09 #PHP
xml+php动态载入与分页
Oct 09 #PHP
You might like
PHP $_FILES中error返回值详解
2014/01/30 PHP
PHP+MySQL删除操作实例
2015/01/21 PHP
Yii2实现ajax上传图片插件用法
2016/04/28 PHP
PHP链表操作简单示例
2016/10/15 PHP
简单的jquery拖拽排序效果实现代码
2011/09/20 Javascript
推荐40款强大的 jQuery 导航插件和教程(上篇)
2012/09/14 Javascript
javascript:void(0)使用探讨
2013/08/27 Javascript
js绘制圆形和矩形的方法
2015/08/05 Javascript
jQuery实现TAB风格的全国省份城市滑动切换效果代码
2015/08/24 Javascript
js正则表达式惰性匹配和贪婪匹配用法分析
2016/12/26 Javascript
浅析vue数据绑定
2017/01/17 Javascript
JS中的phototype详解
2017/02/04 Javascript
vue addRoutes实现动态权限路由菜单的示例
2018/05/15 Javascript
react native 原生模块桥接的简单说明小结
2019/02/26 Javascript
Vue请求java服务端并返回数据代码实例
2019/11/28 Javascript
JavaScript实现省份城市的三级联动
2020/02/11 Javascript
[06:11]2014DOTA2国际邀请赛 专访团结一心的VG战队
2014/07/21 DOTA
Python用GET方法上传文件
2015/03/10 Python
python使用fileinput模块实现逐行读取文件的方法
2015/04/29 Python
Python中的字典与成员运算符初步探究
2015/10/13 Python
tensorflow常用函数API介绍
2020/04/19 Python
基于selenium及python实现下拉选项定位select
2020/07/22 Python
浅谈css3中的前缀
2016/07/20 HTML / CSS
乐高瑞士官方商店:LEGO CH
2020/08/16 全球购物
经济实惠的名牌太阳镜和眼镜:Privé Revaux
2021/02/07 全球购物
计算机学生求职信范文
2014/01/30 职场文书
餐饮企业总经理岗位职责范文
2014/02/18 职场文书
5s标语大全
2014/06/23 职场文书
民事诉讼代理授权委托书范本
2014/10/08 职场文书
个人房屋转让协议书范本
2014/10/26 职场文书
旗帜观后感
2015/06/08 职场文书
老人节主持词
2015/07/04 职场文书
谢师宴家长答谢词
2015/09/30 职场文书
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL
教你部署vue项目到docker
2022/04/05 Vue.js
Apache POI操作批量导入MySQL数据库
2022/06/21 Servers