Tengo una tabla dinamica, se rellena en funcion del numero de registros que tiene la tabla.
Le he añadido dos botones , modificar y borrar por cada linea, pero no consigo que me llame a las funciones correspondientes de borrado y modificacion.
Agradeceria explicacion
codigo del fichero hobetuz.php
<?PHP
include 'header.php';
if (!$_SESSION["login"]) {
$loginURL = "../clases/logOut.php"; //VARIABLE PARA EL REDIRECT
header('Location: ' . $loginURL); //REDIRECT
} else
if(isset($_POST["guardar"])){
$camposCurso = array($_POST["nivel"],$_POST["codigoUF"],$_POST["nombreCursoES"],$_POST["nombreCursoEU"],$_POST["fechaInicio"],$_POST["numHoras"],$_POST["horario"],$_POST["idFamilia"],$_SESSION["id"],$_POST["plazasOfertadas"],$_POST["solicitudes"]);
$hobetuz->alta($camposCurso);
}
$_SESSION["hobetuz"] = $hobetuz->consulta($_SESSION["id"], $_SESSION["idioma"]);
if(isset($_POST["añadir"]))
{
$añadir = TRUE;
} else {
$añadir = FALSE;
}
?>
<div id="page-wrapper">
<div class="container-fluid">
<!-- Page Heading -->
<div class="row page-header">
<div class="col-lg-6">
<h1>
Hobetuz
</h1>
</div>
<?PHP
if(!$añadir) {
?>
<div class="col-lg-6">
<form action="hobetuz.php" method="POST" role="form">
<button type="submit" name="añadir" class="btn btn-success btn-lg pull-right"> <span class='glyphicon glyphicon glyphicon-plus' aria-hidden='true'></span> Añadir</button>
</form>
</div>
<?PHP
}
?>
</div>
<!-- /.row -->
<div class="row">
<div class="col-lg-12">
<?PHP
if($añadir) {
echo $hobetuz->añadirFormularioHobetuz("es");
} else {
echo $_SESSION["hobetuz"];
}
?>
</div>
</div>
</div>
<!-- /.container-fluid -->
<footer class="clase-general">
</footer>
</div>
<!-- /#page-wrapper -->
</div>
<!-- /#wrapper -->
<!-- jQuery -->
<script src="js/jquery.js"></script>
<!-- Bootstrap Core JavaScript
<script src="js/bootstrap.min.js"></script>-->
<script src="js/bootstrap.js"></script>
<!-- Morris Charts JavaScript -->
<script src="js/plugins/morris/raphael.min.js"></script>
<script src="js/plugins/morris/morris.min.js"></script>
<script src="js/plugins/morris/morris-data.js"></script>
<!-- js placed at the end of the document so the pages load faster -->
<script class="include" type="text/javascript" src="../assets/js/jquery.dcjqaccordion.2.7.js"></script>
<script src="../assets/js/jquery.scrollTo.min.js"></script>
<script src="../assets/js/jquery.nicescroll.js" type="text/javascript"></script>
<!--common script for all pages-->
<script src="../assets/js/common-scripts.js"></script>
</body>
</html>
codigo del fichero hobetuz.class.php
<?php
include_once("conection.class.php");
class Hobetuz {
private $pdo;
//constructor
function Hobetuz() {
$this->pdo = getPDO();
}
function alta($campos) {
$sql = "INSERT INTO hobetuz (Nivel, CodigoUF, NombreCursoES, NombreCursoEU, FechaInicio,NumHoras, Horario, codFamilia, codCentro, PlazasOfertadas, numSolicitudReales) "
. "VALUES ($campos[0], '$campos[1]', '$campos[2]', '$campos[3]', '$campos[4]', '$campos[5]', '$campos[6]', $campos[7], $campos[8], $campos[9], $campos[10]);";
try {
$filas = $this->pdo->prepare($sql);
$filas->execute();
} catch (PDOException $e) {
echo "conexion fallida: " . $e->getMessage();
}
$filas->closeCursor();
}
function baja($cod) {
echo "<script>alert('baja');</script>"; ///************************
$sql = "DELETE FROM hobetuz WHERE _id=$cod;";
echo "<script>alert('$sql');</script>";
try {
$filas = $this->pdo->prepare($sql);
$filas->execute();
} catch (PDOException $e) {
echo "conexion fallida: " . $e->getMessage();
}
$filas->closeCursor();
}
function modifica($campos, $id) {
$sql = "UPDATE hobetuz SET Nivel=$campos[0], NumHoras=$campos[1], FechaInicio='$campos[2]', Horario='$campos[3]', "
. "codFamilia=" . $this->sacarCodFa($campos[4]) . ", numSolicitudReales=$campos[5] WHERE _id=$id";
try {
$filas = $this->pdo->prepare($sql);
$filas->execute();
} catch (PDOException $e) {
echo "conexion fallida: " . $e->getMessage();
}
$filas->closeCursor();
}
function consulta($id,$idioma) {
if($idioma=="es")
{
$nombres=array("NIVEL","CÓDIGO CURSO","NOMBRE","Nº HORAS","FECHA DE INICIO","HORARIO", "FAMILIA","PALZAS OFERTADAS","Nº SOLICITUDES","Modificar","Eliminar","Nombre del Curso ES","Nombre de la Familia ES" );
$nombreCurso="NombreCursoES";
$nombreFamilia="nombreFamES";
}
else if($idioma=="eu")
{
$nombres=array("MAILA","COD MAILA","IZENA","ORDU KOP.","HASIERA DATA","ORDUTEGIA", "FAMILIA","ESKAINTZA KOP.","ESKAERA KOPURUA","Aldatu","Ezabatu","Curtso Izena EU","Familiaren Izena EU");
$nombreCurso="NombreCursoEU";
$nombreFamilia="nombreFamEU";
}
$datos = "";
$sql = "SELECT h._id, h.Nivel, h.CodigoUF, h.NombreCursoES,h.NombreCursoEU, h.NumHoras, h.FechaInicio, h.Horario, f.nombreFamES,f.nombreFamEU, h.PlazasOfertadas, h.numSolicitudReales "
. "FROM hobetuz h inner join familias f on (h.codFamilia=f._id) inner join centros c on (c._id=h.CodCentro) WHERE c._id=$id;";
try {
$filas = $this->pdo->prepare($sql);
$filas->execute();
$datos = '<section id="no-more-tables">
<table id="tablaReglada" class="table table-bordered table-striped table-condensed cf">
<thead class="cf">
<tr class="campos">
<th>'.$nombres[0].'</th>
<th>'.$nombres[1].'</th>
<th>'.$nombres[2].' </th>
<th>'.$nombres[3].'</th>
<th>'.$nombres[4].'</th>
<th>'.$nombres[5].'</th>
<th>'.$nombres[6].'</th>
<th>'.$nombres[7].'</th>
<th>'.$nombres[8].'</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>';
foreach ($filas as $fila) {
$datos .= '<tr>
<td data-title="'.$nombres[0].'">' . $fila["Nivel"] . '</td>
<td data-title="'.$nombres[1].'">' . $fila["CodigoUF"] . '</td>
<td data-title="'.$nombres[11].'">' . $fila[$nombreCurso] . '</td>
<td data-title="'.$nombres[3].'">' . $fila["NumHoras"] . '</td>
<td data-title="'.$nombres[4].'">' . $fila["FechaInicio"] . '</td>
<td data-title="'.$nombres[5].'">' . $fila["Horario"] . '</td>
<td data-title="'.$nombres[12].'">' . $fila[$nombreFamilia] . '</td>
<td data-title="'.$nombres[7].'">' . $fila["PlazasOfertadas"] . '</td>
<td data-title="'.$nombres[8].'">' . $fila["numSolicitudReales"] . '</td>
<td data-title="'.$nombres[9].'"> <a type="button" class="btn btn-primary btnCrudLinea">'.$nombres[9].'</a></td>
<td data-title="'.$nombres[10].'"> <a type="button" class="btn btn-primary btnCrudLinea">'.$nombres[10].'</a></td>
</tr>';
}
$datos.= '</tbody></table></section>';
} catch (PDOException $e) {
echo "conexion fallida: " . $e->getMessage();
}
$filas->closeCursor();
return $datos;
}
function consultaModi($id) {
$sql = "SELECT h._id, h.Nivel, h.CodigoUF, h.NombreCursoES, h.NumHoras, h.FechaInicio, h.Horario, f.nombreFamES, h.PlazasOfertadas, h.numSolicitudReales "
. "FROM hobetuz h inner join familias f on (h.codFamilia=f._id) WHERE h._id=$id;";
try {
$filas = $this->pdo->prepare($sql);
$filas->execute();
foreach ($filas as $fila) {
echo'<table id="hob">
<tr><th>NIVEL</th><th>Nº HORAS</th><th>FECHA DE INICIO</th><th>HORARIO</th><th>FAMILIA</th><th>PLAZAS OFERTADAS</th><th>Nº SOLICITUDES</th></tr>
<tr>
<td id="corto"><input type="text" name="nivel" id="nivel" value=' . $fila["Nivel"] . '></td>
<td id="corto"><input type="text" name="numH" id="numH" value=' . $fila["NumHoras"] . '></td>
<td><input type="text" name="fIni" id="fIni" value="' . $fila["FechaInicio"] . '"></td>
<td><textArea name="horario" id="horario">' . $fila["Horario"] . '</textArea></td>
<td id="largo">' . $this->sacarFamilias($fila["nombreFamES"]) . '</td>
<td id="corto">' . $fila["PlazasOfertadas"] . '</td>
<td id="corto"><input type="text" name="numSo" id="numSo" value=' . $fila["numSolicitudReales"] . '></td>
<td id="edi" colspan=2><input type="submit" name="enviar" value="GUARDAR"></td>
<td colspan=2><input type="submit" name="enviar" value="CANCELAR"></td>
</tr>
</table>';
}
} catch (PDOException $e) {
echo "conexion fallida: " . $e->getMessage();
}
$filas->closeCursor();
}
function consultaAlta($mes) {
echo'<form method=POST>
<table id="lan">
<tr>
<td id="corto" colspan=3>CÓDIGO CURSO: <input type="text" name="codCU" id="codCU"></td>
<td id="corto" colspan=3>NIVEL: <input type="number" name="nivel" id="nivel"></td>
</tr>
<tr>
<td>NOMBRE CURSO (ES):</td><td id="mulargo" colspan=2><input type="text" name="nomCUES" id="nomCUES"></td>
<td>NOMBRE CURSO (EU):</td><td id="mulargo" colspan=2><input type="text" name="nomCUEU" id="nomCUEU"></td>
</tr>
<tr>
<td>NÚMERO DE HORAS:</td><td id="corto"><input type="number" name="numH" id="numH"></td>
<td colspan=2>FECHA DE INICIO:<br>
<select name="dia">';
for ($i = 1; $i <= 31; $i++) {
echo'<option>' . $i . '</option>';
} echo '</select> /
<select name="mes">';
for ($i = 0; $i < count($mes); $i++) {
echo'<option>' . $mes[$i] . '</option>';
} echo '</select> /
<select name="urte">';
for ($i = date("Y"); $i <= (date("Y") + 10); $i++) {
echo'<option>' . $i . '</option>';
} echo '</select>
</td>
<td>HORARIO:</td><td><input type="text" name="horario" id="horario"></td>
</tr>
<tr>
<td>FAMILIA:</td><td>' . $this->sacarFamilias("ELEGIR") . '</td>
<td>PLAZAS OFERTADAS:</td><td id="corto"><input type="number" name="po" id="po"></td>
<td>NÚMERO DE SOLICITUDES:</td><td id="corto"><input type="number" name="numSo" id="numSo"></td>
</tr>
<tr>
<td id="edi" colspan=3><input type="submit" name="enviar" value="GUARDAR"></td>
<td colspan=3><input type="submit" name="enviar" value="CANCELAR"></td>
</tr>
</table>
</form>';
}
function sacarFamilias($fam) {
$sql = "SELECT nombreFamES FROM familias;";
try {
$filas = $this->pdo->prepare($sql);
$filas->execute();
$datos = '<select id="nomFa" name=nomFa><option>' . $fam . '</option><option>-------</option>';
foreach ($filas as $fila) {
$datos = $datos . '<option>' . $fila['nombreFamES'] . '</option>';
}
$datos = $datos . '</select>';
} catch (PDOException $e) {
echo "conexion fallida: " . $e->getMessage();
}
$filas->closeCursor();
return $datos;
}
function sacarCodFa($nom) {
$sql = "SELECT _id FROM familias WHERE nombreFamES='$nom';";
try {
$filas = $this->pdo->prepare($sql);
$filas->execute();
foreach ($filas as $fila) {
$datos = $fila['_id'];
}
} catch (PDOException $e) {
echo "conexion fallida: " . $e->getMessage();
}
$filas->closeCursor();
return $datos;
}
function cargarComboFamilias($idioma)
{
$sql = "SELECT * FROM familias;";
try {
$filas = $this->pdo->prepare($sql);
$filas->execute();
$datos = '<select id="idFamilia" name="idFamilia" class="form-control input-lg">';
if($idioma=="es")
{
$idiomaSeleccionado="nombreFamES";
}
else
{
$idiomaSeleccionado="nombreFamEU";
}
foreach ($filas as $fila) {
$datos .= '<option value="' . $fila['_id'] . '">' . $fila[$idiomaSeleccionado].'</option>';
}
$datos = $datos . '</select>';
} catch (PDOException $e) {
echo "conexion fallida: " . $e->getMessage();
}
$filas->closeCursor();
return $datos;
}
function añadirFormularioHobetuz($idioma)
{
$datos="";
$datos.='<section>
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-12">
<form role="form" action="hobetuz.php" method="POST">
<h4>AÑADIR CURSO </h4>
<hr class="colorgraph">
<div class="row">
<div class="col-xs-6 col-sm-3 col-md-3">
<div class="form-group ">
<select name="nivel" class="form-control input-lg" tabindex="1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</div>
</div>
<div class="col-xs-6 col-sm-3 col-md-3">
<div class="form-group ">
<input type="text" name="codigoUF" id="codigoUF" class="form-control input-lg" placeholder="CODIGO UF" tabindex="2" required="true" maxlength="8">
</div>
</div>
<div class="col-xs-12 col-sm-6 col-md-6">
<div class="form-group">
'. $this->cargarComboFamilias('$idioma').'
</div>
</div>
</div>
<div class="form-group ">
<input type="text" name="nombreCursoES" id="nombreCursoES" class="form-control input-lg" placeholder="Nombre del Curso en Español" tabindex="3" required="true">
</div>
<div class="form-group ">
<input type="text" name="nombreCursoEU" id="nombreCursoEU" class="form-control input-lg" placeholder="Nombre del Curso en Euskera" tabindex="4" required="true">
</div>
<div class="row">
<div class="col-xs-6 col-sm-4 col-md-4">
<div class="form-group">
<input type="date" name="fechaInicio" id="fechaInicio" class="form-control input-lg" placeholder="01/01/2016" tabindex="5" required="true">
</div>
</div>
<div class="col-xs-6 col-sm-4 col-md-4">
<div class="form-group">
<input type="number" name="numHoras" id="numHoras" class="form-control input-lg" placeholder="NºHoras" tabindex="6" required="true" min=0>
</div>
</div>
<div class="col-xs-12 col-sm-4 col-md-4">
<div class="form-group">
<input type="text" name="horario" id="horario" class="form-control input-lg" placeholder="Horario, EJ: 17 a 19" tabindex="7" required="true">
</div>
</div>
</div>
<div class="row">
<div class="col-xs-6 col-sm-3 col-md-3">
<div class="form-group">
<input type="number" name="plazasOfertadas" id="plazasOfertadas" class="form-control input-lg" placeholder="Plazas Ofertadas" tabindex="8" required="true" min=0 max=25>
</div>
</div>
<div class="col-xs-6 col-sm-3 col-md-3">
<div class="form-group">
<input type="number" name="solicitudes" id="solicitudes" class="form-control input-lg" placeholder="Nº Solicitudes" tabindex="9" required="true" min=0 max=25>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-md-12">
<input type="submit" value="Guardar" name="guardar" class="btn btn-primary btn-block btn-lg" tabindex="10">
</div>
</div>
</form>
<p></p>
</div>
</div>
</section>';
return $datos;
}
}