Foros del Web » Programando para Internet » PHP »

Uchas!! me estoi cayendo en cosas simples!!!

Estas en el tema de Uchas!! me estoi cayendo en cosas simples!!! en el foro de PHP en Foros del Web. wolas de nuevo, como están?..bien? me alegro!! estoi validando los datos que me llegan desde un formulario. Antes de almacenarlos en la Base de datos ...
  #1 (permalink)  
Antiguo 16/04/2002, 02:27
 
Fecha de Ingreso: marzo-2002
Mensajes: 23
Antigüedad: 15 años, 8 meses
Puntos: 0
Uchas!! me estoi cayendo en cosas simples!!!

wolas de nuevo, como están?..bien? me alegro!!

estoi validando los datos que me llegan desde un formulario. Antes de almacenarlos en la Base de datos chequeo que no tengan errores, si los hay, informo y una vez que los datos esten impeques guardo y ahi esta el problema porke mi codigo revisa, chequea informa errores y almacena sin importar si hay 0 o 1000 errores. Molestaría mucho si les muestro un poco de codigo y me dan su opinión??

<?php

if ($enviar == "Enviar / Send")
if (empty ($telefono) && empty ($fax) && empty ($email)) {echo "<br> Debe ingresar al menos su número de teléfono, fax o email\n.";}
else {
if (! is_numeric($telefono) && ! empty ($telefono)) {echo "<br> Formato no válido de teléfono\n.";}

if (! is_numeric($fax) && !empty ($fax)) { echo "<br>Formato no válido de fax.\n"; }

if (! ereg ("@", $email) && ! empty($email)) { echo "<br>Formato no válido de email"; }
}

$link = mysql_connect("localhost", "nobody") or die ("No se puede conectar a la base de datos");
mysql_select_db("hotel", $link);
$sql = "INSERT INTO reserva (nom_cli, rut_cli, fono_cli, fax_cli, email_cli, nom_emp, cif_emp, dir_emp, ciudad_emp, fono_emp, fax_emp, email_emp, met_conf_res, lugar_conf, num_simple,fech_simple, noches_simple, num_doble, fech_doble, noches_doble, num_eje, fech_eje, noches_eje,num_dip, fech_dip, noches_dip, num_pres, fech_pres, noches_pres, comentarios ) VALUES ('$nombre','$rut','$telefono','$fax','$email','$em presanombre','$cif','$direccion','$ciudad','$empre satelefono','$empresafax','$empresaemail','$contac tby','$contactin','$dobinnume','$dobinfech','$dobi nnoch','$doblenume','$doblefech','$doblenoch','$co nvenume','$convefech','$convenoch','$jrsuinume','$ jrsuifech','$jrsuinoch','$suitenume','$suitefech', '$suitenoch','$t_comentarios')";
$result = mysql_query ($sql);
echo "<center><br>Se han recibido sus datos satisfactoriamente.\n</center>";

}

?>

grax!!
  #2 (permalink)  
Antiguo 16/04/2002, 09:59
 
Fecha de Ingreso: diciembre-2001
Mensajes: 451
Antigüedad: 16 años
Puntos: 0
Re: Uchas!! me estoi cayendo en cosas simples!!!

Código:
<?php 
//Hola Yavana, yo primero acumularia los 
//errores y dejaria algunas cositas aparte :)
//pero en general esta bien

if ($enviar == "enviar/send"){
$error=false; //aun no hay errores :)

if (!$email || !$nombre || !telefono){
 $ErrMsg = "Complete los campos obligatorios! <br>";
 $error=true;
//al ocurrir un error , no lo tiras altiro a
//pantalla sino que lo guardas en una var, y 
//cambias el estado de $error a verdadero
}else{
 //las otras validaciones, si no vienen
 //vacios, si estan en el formato valido
 //igual cambia la validacion del mail
 //puedes hacer una validacion mas power
 //con ereg()
}

//comprobamos si hubo errores
if($error){
echo "Han Ocurrido los siguientes errores al procesar su peticion<br>$ErrMsg";
}else{
//aqui entonces puede hacer el ingrso
//tranquilamente, otra sugerencia es que
//pongas las instrucciones de conexion a la
//BD en un include, el beneficio es que te da
//mas orden , autodocumentacion y 
//modularidad a tu programacion
}

}
//bueno y eso nomas creo yo, que estes bien
//demas esta decir que cada uno tiene su
//propio estilo para programar, lo que es
//totalmente respetable :)
//saludos... :arriba: 
?>
  #3 (permalink)  
Antiguo 16/04/2002, 12:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Re: Uchas!! me estoi cayendo en cosas simples!!!

En cuanto a la validacion en si ...

La validacion del e-mail es demasiado "rudimentaria" y puede ocasionar que mas de un "listo" te introduzca datos de e-mail incorrectos.

Tienes que usar mas expresiones regulares para poder validar satisfactoriamente datos.

Para el caso del e-mail, la cadena de Expresion regular mas compleja y efectiva seria:
/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/
(sustituye tu @ por esta cadena) ..

Aqui validamos varios aspectos del formato de un e-mail .. como caracteres validos para el nombre de la cuenta (lo que va antes de @) y del Host (lo que va despues de la @) incluyendo el dominio (.com .. .cl ..) que debe ser de 2 o 3 caracteres despues del ultimo (punto).

Un saludo,
  #4 (permalink)  
Antiguo 16/04/2002, 12:44
 
Fecha de Ingreso: diciembre-2001
Mensajes: 451
Antigüedad: 16 años
Puntos: 0
Re: Uchas!! me estoi cayendo en cosas simples!!!

buena cluster, de hecho andaba buscando una validacion con expresiones regulares de php, igual tengo una en JS pero no me gusta mucho, luego me gustaria aprender un poco mas de expresiones regulares ya que con el trabajo no me he metido mucho por falta de tiempo y son re utiles, si tienes alguna pagina ..esteee..tu cachay
  #5 (permalink)  
Antiguo 16/04/2002, 13:09
 
Fecha de Ingreso: marzo-2002
Mensajes: 23
Antigüedad: 15 años, 8 meses
Puntos: 0
Re: Uchas!! me estoi cayendo en cosas simples!!!

Gracias!!...Así da gusto tener dudas.-
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:00.