source: admin/WebConsole/includes/comunes.php @ 0ef053b

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 0ef053b was 6e9cc32, checked in by ramon <ramongomez@…>, 15 years ago

Borrar caracteres BOM de UTF-8 en ficheros PHP de WebConsole?.

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

  • Property mode set to 100644
File size: 6.1 KB
Line 
1<?
2//________________________________________________________________________________________
3//
4//      Trocea en elementos de una matriz la cadena enviada como parametro separando por parametros
5//      Parámetros:
6//              - trama: La trama
7//       Devuelve:
8//              Una matriz con las parejas de paramertos "nombre=valor"
9//________________________________________________________________________________________
10function extrae_parametros($parametros,$chsep,$chval){
11        $ParametrosCadena="";
12        $auxP=split($chsep,$parametros);
13        for ($i=0;$i<sizeof($auxP);$i++){
14                $dualparam=split($chval,$auxP[$i]);
15                if (isset($dualparam[0]) && isset($dualparam[1])){
16                        $streval='$ParametrosCadena["'.$dualparam[0].'"]="'.$dualparam[1].'";';
17                        eval($streval);
18                }
19        }
20        return($ParametrosCadena);
21}
22//________________________________________________________________________________________
23//
24//      Trocea en elementos de una matriz la cadena enviada como parametro separando por parametros y devolviendo el elegido
25//      Parámetros:
26//       Devuelve:
27//________________________________________________________________________________________
28function extrae_parametro($parametros,$chsep,$chval,$chr){
29        $ParametrosCadena="";
30        $auxP=split($chsep,$parametros);
31        for ($i=0;$i<sizeof($auxP);$i++){
32                $dualparam=split($chval,$auxP[$i]);
33                if (isset($dualparam[0]) && isset($dualparam[1])){
34                        if($dualparam[0]==$chr)
35                                return($dualparam[1]);
36                }
37        }
38        return("");
39}
40
41
42//________________________________________________________________________________________
43//
44//      Busca una cadena dentro de otra.
45// Especificaciones:
46//              Puede ser sensible a las  mayúsculas
47// Parametros:
48//              cadena; cadena donde se va a buscar
49//              subcadena; cadena a buscar
50//              swsensible; si es sensible o no a las mayúsculas y minúsculas
51// Devuelve:
52//              La posición de comienzo de la subcadena dentro de la cadena, o (-1) en caso de no estar dentro
53//________________________________________________________________________________________
54function EnCadena($cadena,$subcadena,$swsensible = false) {
55        $i=0;
56        while (strlen($cadena)>=$i) {
57                unset($substring);
58                if ($swsensible) {
59                        $subcadena=strtolower($subcadena);
60                        $cadena=strtolower($cadena);
61                }
62                $substring=substr($cadena,$i,strlen($subcadena));
63                if ($substring==$subcadena) return$i;
64                $i++;
65        }
66        return -1;
67 }
68//_____________________________________________________________________________________________
69// Búsqueda binaria o dicotómica en una tabla y devuelve el índice del elemento buscado tabla de una dimension
70//_____________________________________________________________________________________________
71function busca_indicebinario($dato,$tabla,$cont){
72        if (empty($tabla)) return(-1);
73        $a=0;
74        $b=$cont-1;
75        do{
76                $p=round(($a+$b)/2,0);
77                if ($tabla[$p]==$dato)
78                        return($p);
79               
80                else{
81                                if ($tabla[$p]<$dato){
82                                        $a=$p+1;
83                                }
84                                else
85                                        $b=$p-1;
86                }
87        }while($b>=$a);
88        return(-1);
89}
90//_____________________________________________________________________________________________
91// Búsqueda binaria o dicotómica en una tabla y devuelve el índice del elemento buscado tabla de dos dimensiones
92//_____________________________________________________________________________________________
93function busca_indicebinariodual($dato,$tabla,$cont){
94        $a=0;
95        $b=$cont-1;
96        do{
97                $p=round(($a+$b)/2,0);
98                if ($tabla[$p][0]==$dato)
99                        return($p);
100               
101                else{
102                                if ($tabla[$p][0]<$dato){
103                                        $a=$p+1;
104                                }
105                                else
106                                        $b=$p-1;
107                }
108        }while($b>=$a);
109        return(-1);
110}
111//___________________________________________________________________________________
112function CreaTablaParametros($cmd){
113
114        global  $tabla_parametros;
115        global  $cont_parametros;
116
117        $rs=new Recordset;
118        $cmd->texto="SELECT * FROM parametros";
119        $rs->Comando=&$cmd;
120        if (!$rs->Abrir()) return; // Error al abrir recordset
121        $rs->Primero();
122        $cont=0;
123        while (!$rs->EOF){
124                $auxtabla_parametros="";
125                $auxtabla_parametros["nemonico"]=$rs->campos["nemonico"];
126                $auxtabla_parametros["descripcion"]=$rs->campos["descripcion"];
127                $auxtabla_parametros["nomidentificador"]=$rs->campos["nomidentificador"];
128                $auxtabla_parametros["nomtabla"]=$rs->campos["nomtabla"];
129                $auxtabla_parametros["nomliteral"]=$rs->campos["nomliteral"];
130                $auxtabla_parametros["tipopa"]=$rs->campos["tipopa"];
131                $tabla_parametros[$cont][0]=$auxtabla_parametros["nemonico"];
132                $tabla_parametros[$cont][1]=$auxtabla_parametros;
133                $cont++;
134                $rs->Siguiente();
135        }
136        $auxnemonico="";
137        // Ordena según el nemonico
138        for ($i=0;$i<$cont-1;$i++){
139                for ($j=$i+1;$j<$cont;$j++){
140                        if($tabla_parametros[$i][0]>$tabla_parametros[$j][0]){
141                                $auxnemonico=$tabla_parametros[$i][0];
142                                $tabla_parametros[$i][0]=$tabla_parametros[$j][0];
143                                $tabla_parametros[$j][0]=$auxnemonico;
144
145                                $auxtabla_parametros=$tabla_parametros[$i][1];
146                                $tabla_parametros[$i][1]=$tabla_parametros[$j][1];
147                                $tabla_parametros[$j][1]=$auxtabla_parametros;
148                        }
149                }
150        }
151        $cont_parametros=$cont;
152}
153/*______________________________________________________________________
154        Redirecciona a la página de error
155        Parametros:
156                - Literal del error
157_______________________________________________________________________*/
158function RedireccionaError($herror){
159
160        $urlerror=urldecode($herror);
161        $wurl="../seguridad/logerror.php?herror=".$urlerror;
162        Header('Location: '.$wurl);
163}
164
165/*______________________________________________________________________
166        Elimina de la cadena de parametros, el parametro iph ( que debe ser el ultimo)
167        Parametros:
168                - cadena de parametros de un comando
169        Devuelve:
170                - la cadena sin el parametro iph y su valor
171_______________________________________________________________________*/
172function Sin_iph($cadena){
173
174        $pos=EnCadena($cadena,"iph=") ;
175        if($pos==-1) return($cadena);
176        return(substr($cadena,0,$pos));
177}
178/*______________________________________________________________________
179        Elimina de la cadena de parametros, el parametro mac ( que debe ser el ultimo)
180        Parametros:
181                - cadena de parametros de un comando
182        Devuelve:
183                - la cadena sin el parametro iph y su valor
184_______________________________________________________________________*/
185function Sin_mac($cadena){
186
187        $pos=EnCadena($cadena,"mac=") ;
188        if($pos==-1) return($cadena);
189        return(substr($cadena,0,$pos));
190}
Note: See TracBrowser for help on using the repository browser.