FAQ
Hola a tod@s:

Estoy realizando un formulario mediante capas,javascript,etc... pero no me
funciona como debería.Al inicio del script tengo una lista despegable y en
función de la elección que se haga pues deberían de salir unos campos u
otros(campos de texto,radiobuttons,...) y un botón enviar los datos y
demás.Pues bién,una vez que ejecuto el script parece que funciona
correctamente pero cuando elijo en la lista despegable la primera opción y
relleno el campo título cuando le doy a enviar me sale el error que el
título debe rellenarse pero cuando elijo la tercera opción(sólo tengo
implementadas la primera y tercera opción) si me sale correctamente el
resultado y me sale el mensaje se ha registrado correctamente y me sale el
título que he introducido y demás.No sé qué pasa porque ambos subformularios
los he hecho idénticos,únicamente he cambiado los campos que salen en cada
subformulario.

Seguramente esté haciendo mal las estructuras de las capas,etc... pero es
que llevo poco tiempo en este mundo y todavía no sé bien como van las capas
y demás,a ver si me podéis ayudar.Un saludo amigos ;)

Aquí va el codigo:


<?php
include("../verifica.php");
include("../conexion.php");
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>PFC.Pablo Santana Bastida</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<LINK REL="stylesheet" TYPE="text/css" HREF="../estilo.css">
</head>
<script language="javascript">
var nc = (document.layers) ? true:false
var ie = (document.all) ? true:false
var n6 = (document.getElementById) ? true:false

function cambia(valor)
{
switch(valor)
{
case "":
if(ie)
{
document.all['capa1'].style.visibility='hidden';
document.all['capa2'].style.visibility='hidden';
}
else if(nc)
{
document.layers['capa1'].style.visibility='hidde';
document.layers['capa2'].style.visibility='hidde';
}
else if(n6)
{
document.getElementById('capa1').style.visibility='hidden';
document.getElementById('capa2').style.visibility='hidden';
}
break;
case 'proyectoid':
if(ie)
{
document.all['capa1'].style.visibility='visible';
document.all['capa2'].style.visibility='hidden';
}
else if(nc)
{
document.layers['capa1'].style.visibility='show';
document.layers['capa2'].style.visibility='hidde';
}
else if(n6)
{
document.getElementById('capa1').style.visibility='visible';
document.getElementById('capa2').style.visibility='hidden';
}
break;
case 'publicacion':
if(ie)
{
document.all['capa1'].style.visibility='hidden';
document.all['capa2'].style.visibility='visible';
}
else if(nc)
{
document.layers['capa1'].style.visibility='hidde';
document.layers['capa2'].style.visibility='show';
}
else if(n6)
{
document.getElementById('capa1').style.visibility='hidden';
document.getElementById('capa2').style.visibility='visible';
}
break;
}
}
function init() {
if (ie) {
document.all['capa1'].style.visibility='hidden';
document.all['capa2'].style.visibility='hidden';
}
if (nc) {
document.layers['capa1'].style.visibility='hidde';
document.layers['capa2'].style.visibility='hidde';
}
if (n6) {
document.getElementById('capa1').style.visibility='hidden';
document.getElementById('capa2').style.visibility='hidden';
}
}

</script>
<body onLoad="init()">
<?PHP
// Si se ha enviado el formulario
if (isset($enviar))
{
// Mostrar noticia
?>


<H2>Registro Nuevo Mérito</H2><hr>
<br><b>Resultado de la inserción del nuevo mérito</b><br>


<?PHP

// Obtener datos introducidos desde el formulario
// Comprobar que se han introducido todos los datos obligatorios
$errores = "";
if (trim($tituloField) == "")
$errores = $errores . "<LI>Se requiere el título del mérito";

// Subir fichero
$copiarFichero = false;

// Para PHP >= 4.1.0 poner $_FILES en lugar de $HTTP_POST_FILES

// Copiar fichero en directorio de ficheros subidos
// Se renombra para evitar que sobreescriba un fichero existente
// Para garantizar la unicidad del nombre se añade una marca de tiempo
if (is_uploaded_file ($_FILES['archivo']['tmp_name']))
{
$nombreDirectorio = "upload/archivos/";
$consultaid="select MAX(id) from meritos";
$ejecutarconsulta=mysql_query($consultaid);
$resultado=mysql_result($ejecutarconsulta,0,"MAX(id)");
$resultado++;
$nombreFichero = $resultado.$tipomerito;
$copiarFichero = true;
}
// No se ha introducido ningún fichero
else if ($_FILES['archivo']['name'] == "")
$nombreFichero = '';
// El fichero introducido no se ha podido subir
else
{
$errores = $errores . "<LI>No se ha podido subir el archivo\n";
$nombreFichero = '';
}

// Mostrar errores encontrados
if ($errores != "")
{
print ("No se ha podido realizar la inserción debido a los
siguientes errores:");
print ("<UL>");
print ($errores );
print ("</UL>");
print ("[ <A HREF='javascript:history.back()'>Volver</A> ]");
exit();
}

// Aquí vendría la inserción del archivo en el servidor

// Mover archivo a su ubicación definitiva
if ($copiarFichero)
move_uploaded_file ($_FILES['archivo']['tmp_name'],
$nombreDirectorio . $nombreFichero);

// Mostrar datos introducidos
print ("El mérito ha sido registrado correctamente:");
print ("<UL>");
print ("<LI>Título: $tituloField\n");
print ("<LI>Texto: $texto\n");
print ("<LI>Categoría: $categoria\n");
print ("<LI>Archivo: <A TARGET='_blank' HREF='" . $nombreDirectorio
. $nombreFichero . "'>" . $nombreFichero . "</A>");
print ("</UL>");

print ("<BR>");
print ("[ <A HREF='forminsertarmerito.php'>Insertar otro mérito</A>
]");

?>

<?PHP
}
else
{
// Introducir mérito
?>

<H2>Registro Nuevo Mérito</H2>

<b>Tras registrar el mérito usted quedará registrado como responsable/autor
de dicho mérito.</b><hr>

<FORM ACTION="insertarmerito.php" METHOD="POST"
ENCTYPE="multipart/form-data">

<b>Seleccione el tipo de mérito que desea registrar: </b>
<select name="tipomerito"
onchange="cambia(tipomerito[tipomerito.selectedIndex].value)">
<option value="" selected>-----------------------------Seleccione el tipo
de mérito------------------------------</option>
<option value="proyectoid">Partipación en Proyecto de I+D financiado en
Convocatoria Pública</option>
<option value="contratoid">Partipación en Contrato de I+D con Empresa y/o
Administración</option>
<option value="publicacion">Publicación o Documento
Científico-Técnico</option>
<option value="patente">Patente y Modelo de utilidad</option>
<option value="congreso">Contribución a Congreso</option>
<option value="tesis">Tesis Doctoral</option>
<option value="organid">Experiencia en organización de actividad de
I+D</option>
<option value="otromerito">Otro mérito o aclaración</option>
</select>
<br>
<div id=capa1 style="position:absolute">
<TABLE>
<TR><TD><b>Título: *</b></TD>
<TD><textarea name="tituloField" cols="30"
rows="4"></textarea></TD></TR>

<TR><TD><b>Entidad financiadora: </b></TD>
<TD><input type="text" name="entfinancField" size="80"></TD></TR>

<TR><TD><b>Entidades participantes: </b></TD>
<TD><input type="text" name="entpartField" size="80"></TD></TR>

<tr><td><b>Duración: </b><td><b>Desde: </b><?php
echo "<SELECT NAME=diainicio\n";
for ($i = 1; $i <= 31; $i++){
if ($i == 1) echo "<option value=$i selected>$i</option>\n";
echo "<OPTION VALUE=$i>$i</OPTION>\n";
}
echo "</SELECT>\n";

echo "<SELECT NAME=mesinicio\n";
for ($i = 1; $i <= 12; $i++){
if ($i == 1) echo "<option value=$i selected>$i</option>\n";
echo "<OPTION VALUE=$i>$i</OPTION>\n";
}
echo "</SELECT>\n";

echo "<SELECT NAME=annoinicio\n";
for ($i = 1965; $i <= 2007; $i++){
if ($i == 2004) echo "<option value=$i selected>$i</option>\n";
echo "<OPTION VALUE=$i>$i</OPTION>\n";
}
echo "</SELECT>\n";
?>

&nbsp;&nbsp;
<b>Hasta:</b>
<?php
echo "<SELECT NAME=diafin\n";
for ($i = 0; $i <= 31; $i++){
if ($i == 31) {
echo "<option value=$i selected>$i</option>\n";
} else {
echo "<OPTION VALUE=$i>$i</OPTION>\n";
}
}
echo "</SELECT>\n";

echo "<SELECT NAME=mesfin\n";
for ($i = 0; $i <= 12; $i++){
if ($i == 12) {
echo "<option value=$i selected>$i</option>\n";
} else {
echo "<OPTION VALUE=$i>$i</OPTION>\n";
}
}
echo "</SELECT>\n";



echo "<SELECT NAME=annofin\n";
for ($i = 1965; $i <= 2007; $i++){
if ($i == 2004) echo "<option value=$i selected>$i</option>\n";
echo "<OPTION VALUE=$i>$i</OPTION>\n";
}
echo "</SELECT>\n";
?>
</td>

<TR><TD><b>Cuantía subvención: </b></TD>
<TD><input type="text" name="cuantiaField"><b> €uros</b></TD></TR>

<TR><TD><b>Núm. investigadores part.: </b>
</TD>
<TD><input type="text" name="numinvestField"></TD></TR>

<TR><TD><b>Subir archivo: </b></TD>
<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="1024000">
<INPUT TYPE="FILE" SIZE="44" NAME="archivo"></TD></TR>

<TR><TD></TD>
<TD><INPUT TYPE="SUBMIT" NAME="enviar" VALUE="Registrar mérito">
<INPUT TYPE="RESET" VALUE="Borrar formulario"></TD></TR>

</TABLE>
<P>NOTA: los datos marcados con (*) deben ser rellenados
obligatoriamente</P>
</div>

<div id=capa2 style="position:absolute">
<TABLE>
<TR><TD><b>Título: *</b></TD>
<TD><textarea name="tituloField" cols="30"
rows="4"></textarea></TD></TR>

<TR><TD><b>Referencia: </b></TD>
<TD>
<input type="text" name="nombrerefField"
size="70">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="checkbox" name="revista"><b>revista</b>
<input type="checkbox" name="libro"><b>libro</b></TD>
</TR>

<TR><TD><b>Clave: </b></TD>
<TD><b>
<input type="radio" name="L" value="L" checked>L (libro completo)
<input type="radio" name="CL" value="CL">CL (capítulo de libro)
<input type="radio" name="A" value="A">A (artículo)
<input type="radio" name="R" value="R">R (review)
<input type="radio" name="E" value="E">E (Editor)
<input type="radio" name="S" value="S">S (Documento Científico-Técnico
restringido)</TD></b>

<TR><TD><b>Volumen: </b></TD>
<TD><input type="text" name="volumenField"></TD></TR>

<TR><TD><b>Páginas,inicial: </b></TD>&nbsp;&nbsp;&nbsp;
<TD><input type="text" name="paginicialField"
size="10">&nbsp;&nbsp;<b>final:</b>&nbsp;&nbsp;&nbsp;
<input type="text" name="pagfinalField" size="10"> </TD></TR>

<TR><TD><b>Subir archivo: </b></TD>
<TD><INPUT TYPE="HIDDEN" NAME="MAX_FILE_SIZE" VALUE="1024000">
<INPUT TYPE="FILE" SIZE="44" NAME="archivo"></TD></TR>

<TR><TD></TD>
<TD><INPUT TYPE="SUBMIT" NAME="enviar" VALUE="Registrar mérito">
<INPUT TYPE="RESET" VALUE="Borrar formulario"></TD></TR>

</TABLE>
<P>NOTA: los datos marcados con (*) deben ser rellenados
obligatoriamente</P>
</div>
</FORM>


<?PHP
}
?>

</body>
</html>

_________________________________________________________________
Reparaciones, servicios a domicilio, empresas, profesionales... Todo en la
guía telefónica de QDQ. http://qdq.msn.es/msn.cfm

Search Discussions

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupphp-general-es @
categoriesphp
postedAug 27, '04 at 9:07p
activeAug 27, '04 at 9:07p
posts1
users1
websitephp.net

1 user in discussion

Pablo Santana Bastida: 1 post

People

Translate

site design / logo © 2022 Grokbase