PHP - AYUDA CON VALIDACIONES, JAVASCRIPT DENTO DE HEREDO

   
Vista:

AYUDA CON VALIDACIONES, JAVASCRIPT DENTO DE HEREDO

Publicado por roxxane (39 intervenciones) el 19/03/2009 17:51:02
Hola,
Tengo mi codigo con HEREDOC, entonces en la parte de modificar y en la parte de agregar nuevo registro si se deja un campo en blanco o hay algun error de captura manda el mensaje del error pero me borra toda la informacion que ya tenia y se tienen que volver a capturar, necesito que mande el error pero que la informacion se quede para no volverla a capturar, talvez solo borre la parte del error, trate de utilizar una opcion de validacion pero con javascript, el problema es que no se en donde meter el codigo, ya hice pruebas por todos lados y nadamas no lo respeta. les pongo parte de mi codigo para que se den una idea. Creo que puede funcionar corrigiendo algo directamente (que no se que es) o con la idea del javascript. Si tienen alguna sugerencia o correccion se los agradecere.

... estas son las funciones que en un html, funcionan bien
<script language="javascript" type="text/javascript" >
function check_valid(form){
var error="";
error += verify_nombre(form.esquemanombre.value, '', 0);
error += verify_esfedi(form.nuevafe.value);
if (error != ""){
alert(error);
return false;
}
return true;
}
</script>
<script language="javascript" type="text/javascript">

function verify_nombre(campo, caract_extra, nulo) {
var error="";
if (campo == "") {
error="El NOMBRE no puede quedar vacio. ";
.... quito el codigo para que este abreviado
contador++
} else {
error= "ERROR: No se acepta el caracter '" + ubicacion + "', el NOMBRE solo puede contener letras. "
return error;
}
}
return error; }

function verify_esfedi(Cadena) {
var error="";
var Fecha= new String(Cadena) // Crea un string
if (!(Cadena.length==10)) {
error="La FECHA debe estar en formato DD/MM/AAAA, y debe contener 10 caracteres. ";
.... aqui mas codigo que quito
if (Mes==4 || Mes==6 || Mes==9 || Mes==11 || Mes==2) {
if (Mes==2 && Dia > 28 || Dia>30) {
error= "Dia inválido. Verificar la FECHA. ";
return error;
}
}
return error;
}
</script>;

<?
require("aut_verifica.inc.php");
$nivel_acceso=3;
if ($nivel_acceso < $_SESSION['usuario_nivel']){
header ("Location: $redir?error_login=5");
exit;
}

require ("aut_config.inc.php");
$pag=$_SERVER['PHP_SELF'];
.... quito codigo

if ($_GET['accion']=="nuevo"){

cabeceraHTML();

echo <<< HTML
<img src="FONDOS/logo.jpg" width="1016" height="60" /><BR>
<form method="post" action="$PHP_SELF?accion=hacernuevo" onsubmit="return check_valid(this)" >

<table width="500" border="1" cellspacing="0" cellpadding="4" align="center">
<tr>
<td colspan="2" height="30" bgcolor="#115A7A">
<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">.:

.... hago la el formulario

if ($_GET['accion']=="hacernuevo"){
$fecha=$_POST['fecha'];
$nombre=$_POST['esquemanombre'];
$descripcion=$_POST['descripcion'];

// ***Validar el Nombre ***

if (ereg("[0-9]", trim($nombre))) {
header ("Location: $pag?accion=nuevo&error=5");
exit;
}

// ***valida dia mes y año ****

if (!ereg("(0[1-9]|[12][0-9]|3[01])[/](0[1-9]|1[012])[/](19|20)[0-9]{2}", $fecha)){
header ("Location: $pag?accion=nuevo&error=6");
exit;
}
... y esta parte valida y me manda el error, quisiera que aqui no me borrara lo demas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:AYUDA CON VALIDACIONES, JAVASCRIPT DENTO DE HER

Publicado por casi se soluciona (39 intervenciones) el 23/03/2009 21:30:28
Asunto: Casi solucionado
Lo he logrado sin javascript, ya pude hacer que no se borre la informacion aunque muestre el error solo tenia que porner el resultado dentro de la caja:

<tr bgcolor="#B1D5E5">
<td width="185">
<div align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Nombre(s)
: </font></div>
</td>
<td width="192"><b>
<input type="text" name="nuevonom" class="imputbox" value=$resultados[nombre] onChange="javascript:this.value=this.value.toUpperCase()">
</font></b></td>
</tr>

Lo malo ahora es que si la caja se deja vacia aparece y deja guardar la instruccion: onChange="javascript:this.value=this.value.toUpperCase()" ... no se porque lo este ejecutando asi, alguna idea?.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar