All pastes #219650 Raw Edit

Untitled

public php v1 · immutable
#219650 ·published 2006-10-24 20:14 UTC
rendered paste body
<?php/*** Sistema de administración del departamento * de evaluación de la escuela básica nacional * "María Luisa Paredes de Antonini"** @autor       Janez Rabzelj Zappone <janez@rabzelj.net>* @archivo     Inscripción de los alumnos**/// obtenemos nuestros paquetes PEARrequire_once 'HTML/QuickForm.php';require_once 'MDB2.php';require_once 'config.php';class datosAlumnos extends HTML_QuickForm {    function datosAlumnos()     {        parent::HTML_QuickForm('datosAlumnos', 'post');        // título de los siguientes elementos        $this->addElement('header', '', 'Datos del alumno');        // elementos del formulario        $this->addElement('text', 'nombre', 'Nombre:');        $this->addElement('text', 'apellido', 'Apellido:');        $this->addElement('text', 'cedula', 'C&eacute;dula:');	$this->addElement('text', 'direccion', 'Direcci&oacute;n:');	$this->addElement('text', 'lugarnacimiento' ,'Lugar de nacimiento:');	$this->addElement('text', 'estado', 'Estado:');	// hacemos el hierselect de la nacionalidad	$nacionalidad[0] = 'Venezolano';	$nacionalidad[1] = 'Extranjero';	$opts[] = $nacionalidad;	$hs =& $this->addElement('hierselect', 'nacionalidad', 'Nacionalidad:');	$hs->setOptions($opts);        $this->addElement('text', 'periodoescolar', 'Per&iacute;odo escolar:');        $this->addElement('text', 'cedularepresentante', 'C&eacute;dula del representante:');        $this->addElement('text', 'plantelprocedencia', 'Plantel de procendencia:');	$this->addElement('text', 'grado', 'Grado:');	$this->addElement('text', 'telefono', 'Tel&eacute;fono:');	$this->addElement('text', 'lapso', 'Status (lapso):');	$this->addElement('text', 'anoescolar', 'Año escolar:');	$this->addElement('date', 'fecharetiro', 'Fecha de retiro', array('format'=>'dmY', 'minYear'=>2006, 'maxYear'=>2020));	$this->addElement('text', 'observaciones', 'Observaciones:', array('maxlength'=>60));        // el botón que será mostrado        $botones = array();	$botones[] =& $this->createElement('submit', null, 'Enviar');        $this->addGroup($botones, null, null, '&nbsp;', false);        // filtro para prevenir suciedades        $this->applyFilter('__ALL__', 'trim');        // reglas de campo requerido        $this->addRule('nombre', 'Error, campo requerido', 'required');        $this->addRule('apellido', 'Error, campo requerido', 'required');        $this->addRule('cedula', 'Error, campo requerido', 'required');        $this->addRule('direccion', 'Error, campo requerido', 'required');	$this->addRule('lugarnacimiento', 'Error campo requerido', 'required');	$this->addRule('estado', 'Error, campo requerido', 'required');	$this->addRule('nacionalidad', 'Error, campo requerido', 'required');	$this->addRule('periodoescolar', 'Error, campo requerido', 'required');        $this->addRule('cedularepresentante', 'Error, campo requerido', 'required');	$this->addRule('plantelprocedencia', 'Error, campo requerido', 'required');	$this->addRule('grado', 'Error, campo requerido', 'required');	$this->addRule('telefono', 'Error, campo requerido', 'required');	$this->addRule('anoescolar', 'Error, campo requerido', 'required');	$this->addRule('lapso', 'Error, campo requerido', 'required');	$this->addRule('fecharetiro', 'Error, campo requerido', 'required');	$this->addRule('observaciones', 'Error, campo requerido', 'required');        // reglas de númerico, alfanúmerico y solo letras	$this->addRule('nombre', 'Error, en este campo sólo puedes escribir letras', 'regex', '/^[a-zA-Z\s]+$/');	$this->addRule('apellido', 'Error, en este campo sólo puedes escribir letras', 'regex', '/^[a-zA-Z\s]+$/');        $this->addRule('cedula', 'Error, en este campo sólo puedes escribir números', 'numeric');	$this->addRule('direccion', 'Error, en este campo sólo puedes escribir con letras y números', 'regex', '/^[a-zA-Z0-9\s\-]+$/');	$this->addRule('lugarnacimiento', 'Error, en este campo sólo puedes escribir con letras', 'regex', '/^[a-zA-Z\s]+$/');	$this->addRule('estado', 'Error, en este campo sólo puedes escribir con letras', 'regex', '/^[a-zA-Z\s]+$/');	$this->addRule('nacionalidad', 'Error, en este campo sólo puedes escribir con letras', 'regex', '/^[a-zA-Z\s]+$/');	$this->addRule('periodoescolar', 'Error, en este campo sólo puedes escribir números', 'regex', '/^[a-zA-Z\s\-]+$/');         $this->addRule('cedularepresentante', 'Error, en este campo sólo puedes escribir números', 'numeric');        $this->addRule('plantelprocedencia', 'Error, en este campo sólo puedes escribir letras', 'regex', '/^[a-zA-Z\s]+$/');        $this->addRule('grado', 'Error, en este campo sólo puedes escribir números', 'numeric');	$this->addRule('telefono', 'Error, en este campo sólo puedes escribir números', 'numeric');	$this->addRule('lapso', 'Error, en este campo sólo puedes escribir números', 'numeric');    }    function procesa($dsn, $opciones)     {        // procedemos a procesar los datos        $mdb2 =& MDB2::connect($dsn, $opciones);        if (PEAR::isError($mdb2)) 	{	    die($mdb2->getMessage());	}        // exportamos los valores del formulario        $nombre                 = $this->exportValue('nombre');        $apellido               = $this->exportValue('apellido');        $cedula                 = $this->exportValue('cedula');        $direccion              = $this->exportValue('direccion');	$lugarnacimiento        = $this->exportValue('lugarnacimiento');	$estado                 = $this->exportValue('estado');	$nacionalidad           = $this->exportValue('nacionalidad');	$periodoescolar         = $this->exportValue('periodoescolar');	$cedularepresentante    = $this->exportValue('cedularepresentante');        $plantelprocedencia     = $this->exportValue('plantelprocedencia');	$grado                  = $this->exportValue('grado');	$telefono               = $this->exportValue('telefono');	$lapso                  = $this->exportValue('lapso');	$anoescolar             = $this->exportValue('anoescolar');	$fecharetiro            = $this->exportValue('fecharetiro');        $observaciones          = $this->exportValue('observaciones');        	// ingresamos datos a la db        $valores = array(            'nombre'                 => $nombre,            'apellido'               => $apellido,            'cedula'                 => $cedula,            'direccion'              => $direccion,	    'lugarnacimiento'        => $lugarnacimiento,	    'estado'                 => $estado,	    'nacionalidad'           => $nacionalidad,	    'periodoescolar'         => $periodoescolar,            'cedularepresentante'    => $cedularepresentante,	    'plantelprocedencia'     => $pantelprocedencia,	    'grado'                  => $grado,	    'telefono'               => $telefono,	    'lapso'                  => $lapso,	    'anoescolar'             => $anoescolar,	    'fecharetiro'            => $fecharetiro,            'observaciones'          => $observaciones        );        $tipos = array('text', 'text', 'text', 'text', 'text', 'text', 'text', 'text', 'text','text', 'text', 'text', 'text', 'text', 'text', 'text', 'text', 'text', 'date', 'text');        $mdb2->loadModule('Extended');        $mdb2->extended->autoExecute('datosAlumnos', $valores,                         MDB2_AUTOQUERY_INSERT, null, $tipos);        if (PEAR::isError($mdb2)) 	{           die($mdb2->getMessage());        } 	else 	{           echo 'Los datos han sido procesados correctamente';        }    }}    $form = new datosAlumnos();// se valida el formularioif ($form->validate()) {    $form->procesa($dsn, $opciones);} else {    $form->display();}?>