php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
作者:
php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
看老大介绍的dojo框架,学习着写了下。刚开始学习php 请大家指教下!发现发不了附件。发两个代码大家自己体会了。
<?php
session_start();
if ($_SESSION['gh']==''){
header('location:login.php');
}
include("config.php");
$sql="select * from module";
$result=mssql_query($sql,$conn);
$num=mssql_num_rows($result);
//echo $num;
?>
<style type="text/css">
<!--
#container0 {
border:1px dotted #990033;
height: 10px;
margin: 10px;
}
-->
</style>
<script type="text/javascript" src="include/dojo.js"></script>
<script type="text/javascript">
//引用以下两个dojo包
dojo.require("dojo.style");
dojo.require("dojo.dnd.*");
function init(){
//利用classname取到元素列表,将其注册为dojo.dnd.HtmlDragSour
var arr=dojo.html.getElementsByClass('divdrag')
for(var i=0;i<arr.length;i++){
var parentDiv=arr.parentNode.id
new dojo.dnd.HtmlDragSource(arr,parentDiv);
}
//定义容器
new dojo.dnd.HtmlDropTarget("container0", ["container0",<?php for ( $p = 1 ; $p <= $num ; $p ++) {
echo '"'.'container'.$p.'"';
if ($p != $num){
echo ",";
}
}
echo ']); ';
for ($p =1 ; $p <=$num ;$p++){
echo chr(13).'new dojo.dnd.HtmlDropTarget("container'.$p.'", ["container0",';
for ($o =1 ;$o <= $num;$o++){
echo '"container'.$o.'"';
if ($o != $num){
echo ",";
}
}
echo ']); ';
}
echo chr(13);
?>
}
//增加到window.onload事件中
window.onload=function(){init();}
function bjsave() {
gr=""
<?php
$sql='select id from module';
$result=mssql_query($sql,$conn);
while($myrow=mssql_fetch_array($result))
echo 'if (mokuai'.$myrow['id'].'.parentElement.id !="container0") {'.chr(13).'gr=gr+'.$myrow['id'].'+"|"+ mokuai'.$myrow['id'].'.parentElement.id+ "$"'.chr(13).'}'.chr(13);
?>
form1.gr.value=gr;
form1.submit();
}
</script>
<div id="overDiv" STYLE="position:absolute; visibility:hide; z-index: 1;"></div>
<div id="container0">
<?php
$sql='select * from module where id not in (select mokuaiid from geren where gh ='.$_SESSION['gh'].')';
$result=mssql_query($sql,$conn);
while($myrow=mssql_fetch_array($result))
echo '<span class="divdrag" id="mokuai'.$myrow['id'].'" style="border:1px dotted #990033;height: 20px;width:100px;margin: 5px; " title="'.$myrow['mmark'].'">'.$myrow['mn'].'</span>';
?>
</div>
<table width="98%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="150" valign="top">
<?php
for ($p=1; $p<=$num;$p=$p+2){
echo '<div id="container'.$p.'" style="border:1px dotted #990033;height: 100px;margin: 10px; ">';
$sql='select mokuaiid from geren where biaogeid='.$p.' and gh ='.$_SESSION['gh'];
$result=mssql_query($sql,$conn);
while($myrow=mssql_fetch_array($result)){
$sql='select * from module where id='.$myrow['mokuaiid'];
$result1=mssql_query($sql,$conn);
while($myrow1=mssql_fetch_array($result1)){
echo '<span class="divdrag" id="mokuai'.$myrow1['id'].'" style="border:1px dotted #990033;height: 20px;width:100px;margin: 5px; " title="'.$myrow1['mmark'].'">'.$myrow1['mn'].'</span>';
}
}
echo '</div>';
}
?></td>
<td width="150" valign="top">
<?php
for ($p=2; $p<=$num;$p=$p+2){
echo '<div id="container'.$p.'" style="border:1px dotted #990033;height: 100px;margin: 10px; ">';
$sql='select mokuaiid from geren where biaogeid='.$p.' and gh ='.$_SESSION['gh'];
$result=mssql_query($sql,$conn);
while($myrow=mssql_fetch_array($result)){
$sql='select * from module where id='.$myrow['mokuaiid'];
$result1=mssql_query($sql,$conn);
while($myrow1=mssql_fetch_array($result1)){
echo '<span class="divdrag" id="mokuai'.$myrow1['id'].'" style="border:1px dotted #990033;height: 20px;width:100px;margin: 5px; " title="'.$myrow1['mmark'].'">'.$myrow1['mn'].'</span>';
}
}
echo '</div>';
}
?>
</td>
</tr>
</table>
<input type="button" name="Submit" value="保存布局" onclick="bjsave();" />
<form id="form1" name="form1" method="post" action="savegr.php">
<input name="gr" type="hidden" value="" />
</form>
<?php
session_start();
if ($_SESSION['gh']==''){
header('location:login.php');
}
include("config.php");
$sql='delete from geren where gh='.$_SESSION['gh'];
mssql_query($sql);
$gr=str_replace("container","",$_POST['gr']);
//echo $gr;
$array = explode("$", $gr);
for ($i=0;$i<=count($array)-2;$i++){
$add=explode("|",$array[$i]);
$sql='insert into geren (mokuaiid,biaogeid,gh) values ("'.$add[0].'","'.$add
[1].'","'.$_SESSION['gh'].'")';
//echo $sql.'<br>';
mssql_query($sql);
}
header("location:view.php");
?>
dojo 这里下载 http://download.dojotoolkit.org/release-0.3.1/dojo-0.3.1-ajax.zip
复制代码 代码如下:
<?php
session_start();
if ($_SESSION['gh']==''){
header('location:login.php');
}
include("config.php");
$sql="select * from module";
$result=mssql_query($sql,$conn);
$num=mssql_num_rows($result);
//echo $num;
?>
<style type="text/css">
<!--
#container0 {
border:1px dotted #990033;
height: 10px;
margin: 10px;
}
-->
</style>
<script type="text/javascript" src="include/dojo.js"></script>
<script type="text/javascript">
//引用以下两个dojo包
dojo.require("dojo.style");
dojo.require("dojo.dnd.*");
function init(){
//利用classname取到元素列表,将其注册为dojo.dnd.HtmlDragSour
var arr=dojo.html.getElementsByClass('divdrag')
for(var i=0;i<arr.length;i++){
var parentDiv=arr.parentNode.id
new dojo.dnd.HtmlDragSource(arr,parentDiv);
}
//定义容器
new dojo.dnd.HtmlDropTarget("container0", ["container0",<?php for ( $p = 1 ; $p <= $num ; $p ++) {
echo '"'.'container'.$p.'"';
if ($p != $num){
echo ",";
}
}
echo ']); ';
for ($p =1 ; $p <=$num ;$p++){
echo chr(13).'new dojo.dnd.HtmlDropTarget("container'.$p.'", ["container0",';
for ($o =1 ;$o <= $num;$o++){
echo '"container'.$o.'"';
if ($o != $num){
echo ",";
}
}
echo ']); ';
}
echo chr(13);
?>
}
//增加到window.onload事件中
window.onload=function(){init();}
function bjsave() {
gr=""
<?php
$sql='select id from module';
$result=mssql_query($sql,$conn);
while($myrow=mssql_fetch_array($result))
echo 'if (mokuai'.$myrow['id'].'.parentElement.id !="container0") {'.chr(13).'gr=gr+'.$myrow['id'].'+"|"+ mokuai'.$myrow['id'].'.parentElement.id+ "$"'.chr(13).'}'.chr(13);
?>
form1.gr.value=gr;
form1.submit();
}
</script>
<div id="overDiv" STYLE="position:absolute; visibility:hide; z-index: 1;"></div>
<div id="container0">
<?php
$sql='select * from module where id not in (select mokuaiid from geren where gh ='.$_SESSION['gh'].')';
$result=mssql_query($sql,$conn);
while($myrow=mssql_fetch_array($result))
echo '<span class="divdrag" id="mokuai'.$myrow['id'].'" style="border:1px dotted #990033;height: 20px;width:100px;margin: 5px; " title="'.$myrow['mmark'].'">'.$myrow['mn'].'</span>';
?>
</div>
<table width="98%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="150" valign="top">
<?php
for ($p=1; $p<=$num;$p=$p+2){
echo '<div id="container'.$p.'" style="border:1px dotted #990033;height: 100px;margin: 10px; ">';
$sql='select mokuaiid from geren where biaogeid='.$p.' and gh ='.$_SESSION['gh'];
$result=mssql_query($sql,$conn);
while($myrow=mssql_fetch_array($result)){
$sql='select * from module where id='.$myrow['mokuaiid'];
$result1=mssql_query($sql,$conn);
while($myrow1=mssql_fetch_array($result1)){
echo '<span class="divdrag" id="mokuai'.$myrow1['id'].'" style="border:1px dotted #990033;height: 20px;width:100px;margin: 5px; " title="'.$myrow1['mmark'].'">'.$myrow1['mn'].'</span>';
}
}
echo '</div>';
}
?></td>
<td width="150" valign="top">
<?php
for ($p=2; $p<=$num;$p=$p+2){
echo '<div id="container'.$p.'" style="border:1px dotted #990033;height: 100px;margin: 10px; ">';
$sql='select mokuaiid from geren where biaogeid='.$p.' and gh ='.$_SESSION['gh'];
$result=mssql_query($sql,$conn);
while($myrow=mssql_fetch_array($result)){
$sql='select * from module where id='.$myrow['mokuaiid'];
$result1=mssql_query($sql,$conn);
while($myrow1=mssql_fetch_array($result1)){
echo '<span class="divdrag" id="mokuai'.$myrow1['id'].'" style="border:1px dotted #990033;height: 20px;width:100px;margin: 5px; " title="'.$myrow1['mmark'].'">'.$myrow1['mn'].'</span>';
}
}
echo '</div>';
}
?>
</td>
</tr>
</table>
<input type="button" name="Submit" value="保存布局" onclick="bjsave();" />
<form id="form1" name="form1" method="post" action="savegr.php">
<input name="gr" type="hidden" value="" />
</form>
复制代码 代码如下:
<?php
session_start();
if ($_SESSION['gh']==''){
header('location:login.php');
}
include("config.php");
$sql='delete from geren where gh='.$_SESSION['gh'];
mssql_query($sql);
$gr=str_replace("container","",$_POST['gr']);
//echo $gr;
$array = explode("$", $gr);
for ($i=0;$i<=count($array)-2;$i++){
$add=explode("|",$array[$i]);
$sql='insert into geren (mokuaiid,biaogeid,gh) values ("'.$add[0].'","'.$add
[1].'","'.$_SESSION['gh'].'")';
//echo $sql.'<br>';
mssql_query($sql);
}
header("location:view.php");
?>
dojo 这里下载 http://download.dojotoolkit.org/release-0.3.1/dojo-0.3.1-ajax.zip