El problema es que tengo un formulario oculto en el cual tiene values que extraigo de una bd. Ese formulario lo quero enviar mediante ajax el pero quiero que el formulario se envie cuando se de click sobre un enlace.
Pongo el codigo de mi archivo
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>SSA | Sistema de Seguimiento Académico | BIENVENIDO</title>
<meta name="keywords" content="itinerary, list" />
<meta name="description" content="This page provides a list of all itineraries" />
<link href="css/default.css" rel="stylesheet" type="text/css" />
<link href="menu_styles.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="scan_ajax.js"></script>
<script language="javascript" src="validaciones.js"></script>
</head>
<body>
<?
include ("seguridad.php");
include("config.php");
$usuario=$_SESSION['usuario'];
$ssql="SELECT * FROM usuarios WHERE usuario='$usuario'";
$result=mysql_query($ssql) or die("1 Error al ejecutar la consulta MySql dice: ").mysql_error();
while($fila=mysql_fetch_object($result))
{
$num_mat=$fila->cant_mt;
$no_mt=$fila->no_mt;
}
if($num_mat>0){
if($no_mt>0){
?>
<h2> Información que Ingreso a la Base de Datos </h2>
<?
include ("config.php");
$usuario=$_SESSION['usuario'];
$sql="SELECT * FROM segcurso WHERE usuario='$usuario'";
$res=mysql_query($sql,$conn) or die("1 Error al ejecutar la consulta MySql dice: ").mysql_error();
$num=mysql_numrows($res);
echo "<h3>Hay $num de registros en la BD</h3>";
echo "<table border=1>";
?>
<tr bgcolor="#99CC66" align="center">
<td><b>ESP</b></td>
<td width=20%><b>MAT</b></td>
<td><b>GPO</b></td>
<td><b>UT</b></td>
<td><b>U1</b></td>
<td><b>U2</b></td>
<td><b>U3</b></td>
<td><b>U4</b></td>
<td><b>U5</b></td>
<td><b>U6</b></td>
<td><b>U7</b></td>
<td><b>U8</b></td>
</tr>
<?
while($fila2=mysql_fetch_object($res)){
?>
<form name="edit" action="javascript:GuardarRegistro();">
<input type="hidden" name="id" value="<? echo $fila->id; ?>">
<input type="hidden" name="grupo" value="<? echo $fila->grupo; ?>">
<input type="hidden" name="materia" value="<? echo $fila->materia; ?>">
</form>
<a href="javascript:document.forms['edit'].submit();'"><tr onMouseOver="javascript:CambiaColor(1,this);" onMouseOut="javascript:CambiaColor(2,this);" style="cursor:hand" style="cursor:pointer">
<?
echo "<td>$fila2->especialidad</td>";
echo "<td>$fila2->curso</td>";
echo "<td>$fila2->grupo</td>";
echo "<td>$fila2->unidades</td>";
echo "<td>$fila2->u1</td>";
echo "<td>$fila2->u2</td>";
echo "<td>$fila2->u3</td>";
echo "<td>$fila2->u4</td>";
echo "<td>$fila2->u5</td>";
echo "<td>$fila2->u6</td>";
echo "<td>$fila2->u7</td>";
echo "<td>$fila2->u8</td>";
?>
</tr></a>
<?
}
echo "</table>";
?>
</body>
</center>
</html>
<?
}}
else {
echo "<br><br>No ha registrado la información de sus materias.";
echo "<br><br>Para accesar a esta sección primero debe ingresar la información de las materias que imparte.";
echo "<br><br>De clic <b><a href='main.php?opc=registro_NumMat'>aquí</a></b> para registrar sus materias.";
}
?>
Código HTML:
function objetoAjax(){ var xmlhttp=false; try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); } return xmlhttp; } function EnvioRegistro(){ //donde se mostrará lo resultados divResultado = document.getElementById('Resultado'); divResultado.innerHTML= '<p align=center><img src="wait.gif"></p>'; //valores de las cajas de texto especialidad=document.forms.form1.especialidad.value; course=document.forms.form1.course.value; grupo=document.forms.form1.grupo.value; user=document.forms.form1.user.value; //instanciamos el objetoAjax ajax=objetoAjax(); //uso del medoto POST //archivo que realizará la operacion //registro.php ajax.open("POST", "edit.php",true); ajax.onreadystatechange=function() { if (ajax.readyState==4) { //mostrar resultados en esta capa divResultado.innerHTML = ajax.responseText //llamar a funcion para limpiar los inputs LimpiarCampos(); } } ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); //enviando los valores ajax.send("especialidad="+especialidad+"&course="+course+"&grupo="+grupo+"&user="+user) }
Por favor alguien que me ayude.
Gracias de antemano