os lo paso todo por si alguien tan amable de echarle un vistazo y si pudiera decirme el error o lo que habra que añadirle que seguro que es que hay que añadirle algo pero no lo comprendo muy bien gracias.
El archivo.sql tiene ejemplos sueltos de arrastre simplemente.
Código:
CREATE TABLE IF NOT EXISTS `cursos` ( `Cursos` varchar(50) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Volcar la base de datos para la tabla `cursos` -- INSERT INTO `cursos` (`Cursos`) VALUES ('wwwwww'), ('aaaaaaaaa'); -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `nivel` -- CREATE TABLE IF NOT EXISTS `nivel` ( `Nivel` varchar(50) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Volcar la base de datos para la tabla `nivel` -- INSERT INTO `nivel` (`Nivel`) VALUES ('lllllll'), ('lliiiiiioooo'); -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `objetivo_final` -- CREATE TABLE IF NOT EXISTS `objetivo_final` ( `Cursos` varchar(50) NOT NULL, `Nivel` varchar(50) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Volcar la base de datos para la tabla `objetivo_final` -- -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `titulos` -- CREATE TABLE IF NOT EXISTS `titulos` ( `Titulos` varchar(50) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Volcar la base de datos para la tabla `titulos` --
La conexion.php
Código PHP:
<?php
//Configuracion de la conexion a base de datos
$bd_host = "localhost";
$bd_usuario = "root";
$bd_password = "";
$bd_base = "Estudios";
$con = mysql_connect($bd_host, $bd_usuario, $bd_password);
mysql_select_db($bd_base, $con);
?>
guardar.php // Aqui es donde se envian los datos del drag and drop y se insertan
funcionan solo los primeros luego mi problema es que en el case 4 se me insertan pero salteados y he probado a poner elementos[j] pero logicamente me crea los datos repetidos al primero que arrastro xD
Código PHP:
<?php
require('conexion.php');
function ElementosEnBlanco(){
mysql_query("DELETE FROM Nivel");
mysql_query("DELETE FROM Titulos");
mysql_query("DELETE FROM Cursos");
mysql_query("DELETE FROM objetivo_final");
}
$cadena=$_POST['cadena'];
$cadenas=explode('/',$cadena);
$nro_cadenas=count($cadenas);
$i=0;
ElementosEnBlanco();
while($i<$nro_cadenas){
$elementos=explode(',',$cadenas[$i]);
$nro_elementos=count($elementos);
$j=0;
while($j<$nro_elementos){
if($elementos[$j]!=""){
switch($i){
case 0:
mysql_query("INSERT INTO Nivel(nivel) VALUES ('$elementos[$j]')",$con);
break;
case 1:
mysql_query("INSERT INTO Titulos(titulos) VALUES ('$elementos[$j]')",$con);
break;
case 2:
mysql_query("INSERT INTO Cursos(cursos) VALUES ('$elementos[$j]')",$con);
break;
case 3:
mysql_query("INSERT INTO objetivo_final(cursos) VALUES ('$elementos[$j]')",$con);
break;
case 4:
mysql_query("INSERT INTO objetivo_final(nivel) VALUES ('$elementos[$j]')",$con);
break;
}
}
$j++;
}
$i++;
}
echo "Cambios guardados";
?>
insertar.php // Aqui estan el drag and drop y la funcion
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Area</title>
<script src="js/prototype.js" type="text/javascript"></script>
<script src="js/scriptaculous.js" type="text/javascript"></script>
<script src="js/ajax.js" type="text/javascript"></script>
<style>
#Nivel{
float:left;
width:150px;
background-color:#E4ECF3;
margin:5px;
}
#Titulos{
float:left;
width:150px;
background-color:#E4ECF3;
margin:5px;
}
#Cursos{
float:left;
width:150px;
background-color:#E4ECF3;
margin:5px;
}
#offinal2{
position:absolute;
width:200px;
background-color:#E4ECF3;
margin-top:5px;
margin-left:470px;
border:1px solid grey;
}
#offinal{
position:absolute;
width:200px;
background-color:#E4ECF3;
margin-top:5px;
margin-left:673px;
border:1px solid grey;
}
#Nivel div, #Titulos div, #Cursos div, #offinal div, #offinal2 div{
margin:4px;
cursor:move;
border:1px solid red;
}
h3{
font-size:16px;
margin:4px;
color:#003355;
cursor:move;
}
h2{
margin:4px;
background-color:#003355;
color:#FFFFFF;
cursor:move;
}
h4{
margin:4px;
background-color:#003355;
color:#FFFFFF;
cursor:move;
}
#pagina{
width:350px;
margin:left;
padding-left:50px;
padding-right:50px;
height:250px;
}
</style>
<script type="text/javascript">
function obtenerElementos() {
var secciones = document.getElementsByClassName('seccion');
var alerttext = '';
var separador = '';
secciones.each(function(seccion) {
alerttext += separador + Sortable.sequence(seccion);
separador = "/";
});
EnviarDatos(alerttext);
return false;
}
</script>
</head>
<body>
<h4 align="center">Arrastra las areas y pulsa guardar</h4>
<p align="center">
<?php
//include('../../pub/adsgoogle_fullart_tit.tpl');
?>
</p>
<div id="pagina">
<div id="Nivel" class="seccion">
<h2 class="arrastrar">Niveles</h2>
<?php
require('conexion.php');
$Resultado=mysql_query("SELECT * FROM Nivel",$con);
while($MostrarFila=mysql_fetch_array($Resultado)){
echo "<div id='Nivel_".$MostrarFila['Nivel']."'>".$MostrarFila['Nivel']."</div> \n";
}
?>
</div>
<div id="Titulos" class="seccion">
<h2 class="arrastrar">Titulos</h2>
<?php
$Resultado=mysql_query("SELECT * FROM Titulos",$con);
while($MostrarFila=mysql_fetch_array($Resultado)){
echo "<div id='Titulos_".$MostrarFila['Titulos']."'>".$MostrarFila['Titulos']."</div>";
}
?>
</div>
<div id="Cursos" class="seccion">
<h2 class="arrastrar">Cursos</h2>
<?php
$Resultado=mysql_query("SELECT * FROM Cursos",$con);
while($MostrarFila=mysql_fetch_array($Resultado)){
echo "<div id='Cursos_".$MostrarFila['Cursos']."'>".$MostrarFila['Cursos']."</div>";
}
?>
</div>
<div id="offinal2" align='center' class="seccion">
<h3 class="arrastrar">Aqui arrastra los cursos</h3>
<?php
$Resultado=mysql_query("SELECT Cursos FROM Objetivo_final",$con);
while($MostrarFila=mysql_fetch_array($Resultado)){
echo "<div id='offinal_".$MostrarFila['Cursos']."'>".$MostrarFila['Cursos']."</div>";
}
?>
</div>
<div id="offinal" align='center' class="seccion">
<h3 class="arrastrar">Aqui arrastra los niveles</h3>
<?php
$Resultado=mysql_query("SELECT Nivel FROM Objetivo_final",$con);
while($MostrarFila=mysql_fetch_array($Resultado)){
echo "<div id='offinal2_".$MostrarFila['Nivel']."'>".$MostrarFila['Nivel']."</div>";
}
?>
</div>
</div>
<script type="text/javascript">
// <![CDATA[
Sortable.create('Nivel',{
tag:'div',
dropOnEmpty: true,
containment:["Nivel","Titulos","Cursos","offinal","offinal2"],
constraint:false});
Sortable.create('Titulos',{
tag:'div',
dropOnEmpty: true,
containment:["Nivel","Titulos","Cursos","offinal","offinal2"],
constraint:false});
Sortable.create('Cursos',{
tag:'div',
dropOnEmpty: true,
containment:["Nivel","Titulos","Cursos","offinal","offinal2"],
constraint:false});
Sortable.create('offinal',{
tag:'div',
dropOnEmpty: true,
containment:["Nivel","Titulos","Cursos","offinal","offinal2"],
constraint:false});
Sortable.create('offinal2',{
tag:'div',
dropOnEmpty: true,
containment:["Nivel","Titulos","Cursos","offinal","offinal2"],
constraint:false});
Sortable.create('pagina',{
tag:'div',
only:'seccion',
handle:'arrastrar'});
// ]]>
</script>
<p align="center">
<input type="button" name="Button" value="Guardar en la base de datos" onclick="obtenerElementos()" />
</p>
</body>
</html>