該方法已經屬於過時方法,其中關鍵的地方也從論壇上得來的,我只是把它消化吸收後重新寫了更全面的出來。公布出來只是希望更多的新手能從中學到一些東西。如果你對該代碼有任何意見可以留言,但請勿進行人身攻擊,我是一個菜鳥只能寫出這樣的東西,每個老鳥都有這樣的過程。
鑒於時間問題,代碼的提交部分使用的是傳統的表單POST,如果您喜歡可以根據LOAD過程自行加上相應的SCRipT,不過好像只
能用GET了。聽說xml可以實現真正的無重新整理,如果誰手上有希望能借來看看。
在此感謝QQ群組中藍劍雪狐和shelly水在JS上給予的幫助,也新手們能把自己寫的功能代碼貼出來大家一起來學習研究。
最後附上示範地址:http://lfox0002.dns0755.net/text_input.php 請喜歡HACK他人機器的朋友們手下留情,附上示範是為了讓朋友們能更快瞭解代碼。
input.php[HTML] 接受使用者輸入資料。
PHP代碼:----------------------------------------------
/*
申 明
------------------------------
該示範檔案詳細描述了利用JS+PHP對資料庫進行類似無重新整理讀出寫入的方法
2004年02月14日
By L.Fox
*/
header("Cache-Control: no-store, no-cache,must-revalidate"); //這兩行可以取消,把檔案存成HTML
echo $_POST["name1"]; //我是為了?#123;試方便才加的。
?>
根據編號從MySQL提取資料進行編輯並回存[示範]
------------------------------------------------------
LOAD.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"]."
";
echo "編號2=".$_POST["name2"]."
";
echo "名稱1=".$_POST["type1"]."
";
echo "名稱2=".$_POST["type2"]."
";
echo "日期1=".$_POST["date1"]."
";
echo "日期2=".$_POST["date2"]."
";
echo "數量1=".$_POST["num1"]."
";
echo "數量2=".$_POST["num2"]."
";
echo "返回";
}
?>