php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载

yipeiwu_com5年前PHP代码库
看老大介绍的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 checkdate、getdate等日期时间函数操作详解

checkdate($month,$date,$year)   如果应用的值构成一个有效日期,则该函数返回为真。例如,对于错误日期2005年2月31日,此函数返回为假。   在日期用于计...

php swoole多进程/多线程用法示例【基于php7nts版】

本文实例讲述了php swoole多进程/多线程用法。分享给大家供大家参考,具体如下: swoole的多线程其实就是多进程,进程创建太多切换的开销很大,如果能用上pthreads建议用p...

php通过文件头检测文件类型通用代码类(zip,rar等)

php通过文件头检测文件类型通用代码类(zip,rar等)

有时候我们这样做还不完善。可能有些人上存一些文件,但是他通过修改扩展名,让在我们的文件类型之内。 单实际访问时候又不能展示(因为扩展名与文件内容不符)。下面这个php类,可能能够给我们带...

深入理解:XML与对象的序列化与反序列化

这篇文章主要讲述XML与对象的序列化与反序列化。并且会附上一些简单的序列化与反序列化方法,供大家使用。假设我们在一个Web项目中有这样两个类复制代码 代码如下:public class...

自动把纯文本转换成Web页面的php代码

首先让我们来看一个我朋友希望转换的纯文本文件的例子: 以下为引用的内容: 复制代码 代码如下:   Green for Mars!   John R. Doe   The idea of...