Estoy haciendo un formulario de alta de usuarios, en un formulario en HTML pero con "trozos" en PHP ya que algunas listas las relleno con campos de la BD, entonces el archivo es... nuevousuario.php.
Ahora bien, quiero incluir validación de los datos. Si pongo la funcion de validar entre <head> y </head> funciona, pero a mi me gustaría tenerlo en un fichero aparte donde estaran las demas funciones javascript. Entonces si hago un include de ese fichero, ya no lo coje...
Espero que se pueda hacer, pero no sé como.... Creo que todo está bien, la ruta del archivo, los nombres de las funciones pero no sé...
Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<script language="JavaScript" src="/Local/includes/validacions.js" type="text/javascript"> </script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<? include "connexio.php";
$db=conectarse(); ?>
<form name="formusuari" method="post" action="altaUsuari.php" onSubmit="return validarUsuari([B]THIS[/B])">
<table width="84%" border="1" cellspacing="2" cellpadding="2">
<tr>
<td colspan="4">Alta Nou Lector </td>
</tr>
<tr>
<td width="24%">Número de lector:</td>
<td width="24%"><input type="text" name="numLect" size="8"></td>
<td width="27%">Número d'Expedient </td>
<td width="25%"><input type="text" name="numExp" size="8"></td>
</tr>
<tr>
<td>Nom</td>
<td><input type="text" name="nom"></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>1er Cognom </td>
<td><input type="text" name="cognom1"></td>
<td>2on Cognom </td>
<td><input type="text" name="cognom2"></td>
</tr>
<tr>
<td>Adreça</td>
<td colspan="2"><input type="text" name="adresa" size="30"></td>
<td> </td>
</tr>
<tr>
<td>Codi Postal</td>
<td><input type="text" name="cp" size="5"></td>
<td>Poblacio</td>
<td><input type="text" name="poblacio"></td>
</tr>
<tr>
<td>Data de Naixement </td>
<td><select name="dia">
<option value="Dia" selected>Dia</option>
<? for ($dia=1; $dia<=31; $dia++){ ?>
<option value="<?=$dia?>"><?=$dia ?></option>
<? } ?>
</select>
<select name="mes">
<option value="Mes" selected>Mes</option>
<option value="01">Gener</option> <option value="02">Febrer</option> <option value="03">Març</option>
<option value="04">Abril</option> <option value="05">Maig</option> <option value="06">Juny</option> <option value="07">Juliol</option>
<option value="08">Agost</option> <option value="09">Setembre</option> <option value="10">Octobre</option>
<option value="11">Novembre</option> <option value="12">Desembre</option>
</select>
<input name="any" type="text" value="1900" size="4" maxlength="4"></td>
<td>Correu electrònic </td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td>Tipus d'Usuari </td>
<td><select name="tipus">
<option value="0">Escull...</option>
<? $cons = "SELECT * FROM `perfils`";
$res = mysql_query ($cons,$db);
while ($fila = mysql_fetch_array ($res)){?>
<option value="<?=$fila["IdPerfil"]?>"><?=$fila["NomPerfil"]?></option>
<? }?>
</select></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Idioma</td>
<td><select name="idioma">
<option value="0">Escull...</option>
<? $cons = "SELECT * FROM `idiomes`";
$res = mysql_query ($cons,$db);
while ($fila = mysql_fetch_array ($res)){?>
<option value="<?=$fila["CodiIdioma"]?>"><?=$fila["Idioma"]?></option>
<? }?>
</select></td>
<td>Curs</td>
<td><select name="curs">
<option value="0">Escull...</option>
<? $cons = "SELECT * FROM `cursos` ORDER BY CodiCurs";
$res = mysql_query ($cons,$db);
while ($fila = mysql_fetch_array ($res)){?>
<option value="<?=$fila["CodiCurs"]?>"><?=$fila["Curs"]?></option>
<? }?>
</select></td>
</tr>
<tr>
<td>Comentaris</td>
<td colspan="3" rowspan="2"><textarea name="comentari" cols="50" rows="2"> </textarea></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td> </td>
<td><input name="Submit2" type="text" value="Cancelar"></td>
<td><input type="submit" name="Submit" value="Aceptar"></td>
<td> </td>
</tr>
</table>
</form>
</body>
</html>
Código:
Graciasfunction validarUsuari(f) { if (f.nom.value.length == '') { alert("Has d'escriure el nom de l'usuari."); f.nom.focus(); return (false); } }
Yo me pregunto, yo me respondo.. jejeje Bueno... he visto que el problema seria con el parametro "f" y luego me he dado cuenta de que no le pasaba el formulario a la función.
De todas formas, véis correcto que se trabaje con fichero aparte? o es mejor tenerlo todo junto?