source: admin/WebConsole/varios/incorporaordenadores.php @ 231f87d

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacionwebconsole3
Last change on this file since 231f87d was a6b881e, checked in by alonso <alonso@…>, 16 years ago

primeros archivos de administración

git-svn-id: https://opengnsys.es/svn/trunk@520 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100644
File size: 7.8 KB
Line 
1<?
2// *************************************************************************************************************************************************
3// Aplicación WEB: ogAdmWebCon
4// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
5// Fecha Creación: Año 2003-2004
6// Fecha Última modificación: Febrero-2005
7// Nombre del fichero: incorporaordenadores.php
8// Descripción :
9//              Da de alta en la base de datos nuevos ordenadores desde un fichero de configuración dhcp
10// *************************************************************************************************************************************************
11include_once("../includes/ctrlacc.php");
12include_once("../clases/AdoPhp.php");
13include_once("../includes/CreaComando.php");
14include_once("../idiomas/php/".$idioma."/incorporaordenadores_".$idioma.".php");
15//________________________________________________________________________________________________________
16$cmd=CreaComando($cadenaconexion);
17if (!$cmd)
18        Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D.
19//___________________________________________________________________________________________________
20$swf=0;
21$idaula=0;
22$nombreaula="";
23$contenido="";
24
25if (isset($_GET["idaula"])) $idaula=$_GET["idaula"];
26if (isset($_GET["nombreaula"])) $nombreaula=$_GET["nombreaula"];
27
28if (isset($_POST["swf"])) $swf=$_POST["swf"]; // Recoge parametros
29if (isset($_POST["contenido"])) $contenido=$_POST["contenido"];
30if (isset($_POST["idaula"])) $idaula=$_POST["idaula"];
31if (isset($_POST["nombreaula"])) $nombreaula=$_POST["nombreaula"];
32
33$resul=0;
34
35if(!empty($contenido)){ // Se ha introducido contenido en lugar de fichero
36        $resul=procesaLineas($cmd,$idaula,$contenido);
37}
38else{
39        if(!empty($swf)){ // Se ha enviado un fichero de configuración
40                // Se envía fichero de script
41                $ficheroPOST = $HTTP_POST_FILES['userfile']['tmp_name'];
42                $nombreOriginal_archivo = $HTTP_POST_FILES['userfile']['name'];
43                $URLPATHFILECFG="../includes";
44                $FISPATHFILECFG=realpath($URLPATHFILECFG);
45                $NOMBREFILESCFG="filedhcp.cfg";
46                $ficheroLOCAL=$FISPATHFILECFG."/".$NOMBREFILESCFG;
47                $resul=Gestiona($cmd,$idaula);
48        }
49}
50//___________________________________________________________________________________________________
51?>
52<HTML>
53<TITLE>Administración web de aulas</TITLE>
54<HEAD>
55        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
56<LINK rel="stylesheet" type="text/css" href="../estilos.css">
57</HEAD>
58<BODY>
59<FORM action="incorporaordenadores.php" method="post" enctype="multipart/form-data" name="fdatos">
60        <INPUT type=hidden name=swf value=1>
61        <INPUT type=hidden name=idaula value=<?echo $idaula?>>
62        <INPUT type=hidden name=nombreaula value=<?echo $nombreaula?>>
63        <BR>
64        <P align=center class=cabeceras><?echo $TbMsg[0]?><BR>
65        <SPAN align=center class=subcabeceras><IMG src="../images/iconos/aula.gif">&nbsp;<?echo $TbMsg[1].":".$nombreaula ?></SPAN></P>
66<!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
67<table align=center  class=tabla_datos border="0" cellpadding="0" cellspacing="1">
68<!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
69        <tr>
70            <th>&nbsp;<? echo $TbMsg[8]?>&nbsp;</th>
71                        <td><textarea class="cajatexto" name="contenido" cols="70" rows="18"></textarea></td></tr>
72<!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
73        <tr>
74            <th>&nbsp;<? echo $TbMsg[2]?>&nbsp;</th>
75                        <td ><input  class="cajatexto" name="userfile" type="file"  size="52"></td></tr>
76<!------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
77</TABLE>
78 </FORM>
79<TABLE align=center>
80        <TR>
81                <TD><IMG src="../images/boton_cancelar.gif" style="cursor:hand"  onclick=""></TD>
82                <TD width=20></TD>
83                <TD><IMG src="../images/boton_confirmar.gif" style="cursor:hand"  onclick="javascript:document.fdatos.submit();"></TD>
84        </TR>
85</TABLE>
86<?
87//________________________________________________________________________________________________________
88// Mensaje con el resultado del proceso
89echo '<SCRIPT LANGUAGE="javascript">';
90if (!empty($resul))
91        echo "  alert('".$TbMsg[$resul]."');";
92echo '</SCRIPT>';
93//________________________________________________________________________________________________________
94?>
95</BODY>
96</HTML>
97<?
98// *************************************************************************************************************************************************
99function Gestiona($cmd,$idaula){
100        global $ficheroPOST;
101        global $ficheroLOCAL;
102
103        $codigo="";
104        // Se envía fichero de script
105        if(!empty($ficheroPOST)){
106                if (salvafichero_POST($ficheroPOST,$ficheroLOCAL)){
107                        $fp = fopen ($ficheroLOCAL, "r");
108                        $codigo = fread ($fp, filesize ($ficheroLOCAL));
109                        fclose ($fp);
110                        return(procesaLineas($cmd,$idaula,$codigo));
111                }
112                else
113                        return(6);
114        }
115        else
116                return(4);
117}
118//________________________________________________________________________________________________________
119function procesaLineas($cmd,$idaula,$buffer){
120        $nombre="";
121        $MAC="";
122        $IP="";
123        $sw=false;
124        $posa=-1;
125
126        while($posa<strlen($buffer)){
127                        if ('host'==substr($buffer,$posa,4)){
128                                $posa=$posa+4;
129                                $posb=$posa;
130                                while(  substr($buffer,$posb,1)!="{") $posb++;
131                                $nombre=substr($buffer,$posa,$posb-$posa);
132                        }
133                        if ('hardware ethernet'==substr($buffer,$posa,17)){
134                                $posa=$posa+17;
135                                $posb=$posa;
136                                while(  substr($buffer,$posb,1)!=";") $posb++;
137                                $MAC=substr($buffer,$posa,$posb-$posa);
138                        }
139
140                        if ('fixed-address'==substr($buffer,$posa,13)){
141                                $posa=$posa+13;
142                                $posb=$posa;
143                                while(  substr($buffer,$posb,1)!=";") $posb++;
144                                $IP=substr($buffer,$posa,$posb-$posa);
145                        }
146                        if(!empty($nombre) && !empty($MAC) && !empty($IP)){
147                                if(!Inserta($cmd,$idaula,$nombre,$MAC,$IP)) return(3);
148                                $sw=true;
149                                $nombre="";
150                                $MAC="";
151                                $IP="";
152                                $resul=true;
153                        }
154                        $posa++;
155        }
156        if($sw)
157                return(7);
158        else
159                return(5);
160
161}
162//________________________________________________________________________________________________________
163function Inserta($cmd,$idaula,$nombre,$lamac,$laip){
164        $grupoid=0;
165        $nombreordenador=trim($nombre);
166        $ip=trim($laip);
167        $auxmac=trim($lamac);
168        $mac="";
169        for($i=0;$i<strlen($auxmac);$i++)
170                if(substr($auxmac,$i,1)!=":")
171                        $mac.=substr($auxmac,$i,1);
172        $idperfilhard=0;
173        $idservidordhcp=0;
174        $idservidorrembo=0;
175        $idconfiguracion=0;
176        $cmd->CreaParametro("@grupoid",$grupoid,1);
177        $cmd->CreaParametro("@idaula",$idaula,1);
178        $cmd->CreaParametro("@nombreordenador",$nombreordenador,0);
179        $cmd->CreaParametro("@ip",$ip,0);
180        $cmd->CreaParametro("@mac",$mac,0);
181        $cmd->CreaParametro("@idperfilhard",$idperfilhard,1);
182        $cmd->CreaParametro("@idservidordhcp",$idservidordhcp,1);
183        $cmd->CreaParametro("@idservidorrembo",$idservidorrembo,1);
184        $cmd->CreaParametro("@idconfiguracion",$idconfiguracion,1);
185       
186        $cmd->texto="INSERT INTO ordenadores(nombreordenador,ip,mac,idperfilhard,idservidordhcp,idservidorrembo,idaula,grupoid) VALUES (@nombreordenador,@ip,@mac,@idperfilhard,@idservidordhcp,@idservidorrembo,@idaula,@grupoid)";
187        $resul=$cmd->Ejecutar();
188        return($resul);
189}
190//________________________________________________________________________________________________________
191//
192//      Salva un fichero enviado por POST
193//________________________________________________________________________________________________________
194function salvafichero_POST($ficheroPost,$ficheroLocal){
195        if (file_exists($ficheroLocal)) // Borra el fichero si existe
196        unlink($ficheroLocal);
197        return(move_uploaded_file($ficheroPost,$ficheroLocal)); // salva el fichero
198}
199?>
Note: See TracBrowser for help on using the repository browser.