利用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 相关文章推荐
使用MaxMind 根据IP地址对访问者定位
Oct 09 PHP
如何跨站抓取别的站点的页面的补充
Oct 09 PHP
PHP统计目录下的文件总数及代码行数(去除注释及空行)
Jan 17 PHP
PHP遍历二维数组的代码
Apr 22 PHP
把1316这个数表示成两个数的和,其中一个为13的倍数,另一个是11的倍数,求这两个数。
Jun 24 PHP
非常好用的Zend Framework分页类
Jun 25 PHP
php递归json类实例
Dec 02 PHP
php页面缓存方法小结
Jan 10 PHP
PHP使用JSON和将json还原成数组
Feb 12 PHP
在WordPress中获取数据库字段内容和添加主题设置菜单
Jan 11 PHP
浅谈PHP中其他类型转化为Bool类型
Mar 28 PHP
PHP 中 DOMDocument保存xml时中文出现乱码问题的解决方案
Sep 19 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 编程安全性小结
2010/01/08 PHP
《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
2010/11/01 PHP
基于PHP Web开发MVC框架的Smarty使用说明
2013/04/19 PHP
基于PHP生成静态页的实现方法
2013/05/10 PHP
PHP实现图片压缩的两则实例
2014/07/19 PHP
PHP获取页面执行时间的方法(推荐)
2016/12/10 PHP
window.onload 加载完毕的问题及解决方案(下)
2009/07/09 Javascript
js下通过getList函数实现分页效果的代码
2010/09/17 Javascript
juqery 学习之六 CSS--css、位置、宽高
2011/02/11 Javascript
js复制网页内容并兼容各主流浏览器的代码
2013/12/17 Javascript
一个简单的jquery的多选下拉框(自写)
2014/05/05 Javascript
js实现仿百度瀑布流的方法
2015/02/05 Javascript
jquery实现图片左右切换的方法
2015/05/07 Javascript
动态加载jQuery的方法
2015/06/16 Javascript
javascript中 try catch用法
2015/08/16 Javascript
简单学习JavaScript中的for语句循环结构
2015/11/10 Javascript
js注入 黑客之路必备!
2016/09/14 Javascript
深入理解JavaScript中的for循环
2017/02/07 Javascript
JS实现点击下拉菜单把选择的内容同步到input输入框内的实例
2018/01/23 Javascript
vue计算属性及使用详解
2018/04/02 Javascript
vue中v-cloak解决刷新或者加载出现闪烁问题(显示变量)
2018/04/20 Javascript
vue+webpack实现异步加载三种用法示例详解
2018/04/24 Javascript
使用vue2实现带地区编号和名称的省市县三级联动效果
2018/11/05 Javascript
Koa日志中间件封装开发详解
2019/03/09 Javascript
JS异步错误捕获的一些事小结
2019/04/26 Javascript
python 调用HBase的简单实例
2016/12/18 Python
pygame实现简易飞机大战
2018/09/11 Python
在Python中将函数作为另一个函数的参数传入并调用的方法
2019/01/22 Python
PYTHON发送邮件YAGMAIL的简单实现解析
2019/10/28 Python
Manjaro、pip、conda更换国内源的方法
2020/11/17 Python
10张动图学会python循环与递归问题
2021/02/06 Python
如何用Matlab和Python读取Netcdf文件
2021/02/19 Python
传统HTML页面实现模块化加载的方法
2018/10/15 HTML / CSS
html5使用canvas画一条线
2014/12/15 HTML / CSS
2014年开学第一课活动方案
2014/03/06 职场文书
导游词之杭州岳王庙
2019/11/13 职场文书