. * */ class Configuracion { private $nombreCentro; private $numFilas; private $estilo; private $servidor; private $baseDatos; private $usuario; private $clave; private $configuracion="inc/configuracion.inc"; private $confNueva="inc/configuracion.new"; private $confAnterior="inc/configuracion.ant"; public function ejecuta() { $fichero=file_get_contents($this->configuracion,FILE_TEXT); $datos=explode("\n",$fichero); $grabar=isset($_POST['servidor']); if ($grabar) { $fsalida=@fopen($this->confNueva,"wb"); } foreach($datos as $linea) { if (stripos($linea,"DEFINE")!==false) { $filtro=str_replace("'","",$linea); list($clave,$valor)=explode(",",$filtro); list($resto,$campo)=explode("(",$clave); list($valor,$resto)=explode(")",$valor); //$salida.="[$campo]=[$valor]
\n"; switch ($campo) { case 'CENTRO': $this->nombreCentro=$valor; if ($grabar) { $linea=str_replace($valor, $_POST['centro'],$linea); $this->nombreCentro=$_POST['centro']; } break; case 'NUMFILAS': $this->numFilas=$valor; if ($grabar) { $linea=str_replace($valor, $_POST['filas'],$linea); $this->numFilas=$_POST['filas']; } break; case 'ESTILO': $this->estilo=$valor; if ($grabar) { $linea=str_replace($valor, $_POST['estilo'],$linea); $this->estilo=$_POST['estilo']; } break; case 'SERVIDOR': $this->servidor=$valor; if ($grabar) { $linea=str_replace($valor, $_POST['servidor'],$linea); $this->servidor=$_POST['servidor']; } break; case 'BASEDATOS': $this->baseDatos=$valor; if ($grabar) { $linea=str_replace($valor, $_POST['baseDatos'],$linea); $this->baseDatos=$_POST['baseDatos']; } break; case 'USUARIO': $this->usuario=$valor; if ($grabar) { $linea=str_replace($valor, $_POST['usuario'],$linea); $this->usuario=$_POST['usuario']; } break; case 'CLAVE': $this->clave=$valor; if ($grabar) { $linea=str_replace($valor, $_POST['clave'],$linea); $this->clave=$_POST['clave']; } break; } } if ($grabar) { $registro=substr($linea,0,2)=="?>"?$linea:$linea."\n"; fwrite($fsalida,$registro); } } $salida.=$this->formulario(); if ($grabar) { //$salida.=''; $salida.='

Configuración guardada correctamente

'; fclose($fsalida); unlink($this->confAnterior); rename($this->configuracion,$this->confAnterior); rename($this->confNueva,$this->configuracion); } return $salida; } private function formulario() { $personal=$this->estilo=="personal"?'selected':' '; $bluecurve=$this->estilo=="bluecurve"?'selected':' '; $cristal=$this->estilo=="cristal"?'selected':' '; $salida='
'; //$salida.='

'; $salida.='

'; $salida.=''; $salida.=''; $salida.=''; $salida.=''; $salida.=''; $salida.=''; $salida.=''; $salida.=''; $salida.=''; $salida.='

'; $salida.=''; return $salida; } } ?>
Preferencias
Nombre del Centro
Número de filas
Estilo
Base de datos
Servidor
Base de datos
Usuario
Clave