source: trunk/isis/iah2spip/xml.php

Last change on this file was 130, checked in by alberto, 16 years ago

Actualizaciones mejora de url y sitemap

File size: 5.6 KB
Line 
1<?php
2
3// Tarea del Script: Interactuar con la interface del iAH para bases de datos ISIS, solicita un XML como resultado de una consulta
4// para poder interactuar con SPIP
5
6// FORMA DE LLAMAR DESDE URL: http://archivos.bibliotecacta.org.ar/xmlok.php?consulta=trabajo&indice=II
7
8// INICES PARA CONSULTAS:
9// INDICE KK=Palabras de cualquier campo
10// INDICE DD=Palabras del t&iacute;tulo
11// INDICE EE=T&iacute;tulo completo
12// INDICE FF=T&iacute;tulo de P.P.
13// INDICE BB=Autores
14// INDICE CC=Autores Institucionales
15// INDICE MA=Tipo de material
16// INDICE II=Temas
17
18// Fecha 16/06/2009
19
20// TODO:
21// 1 Hacer un formato de visualizacion mas corto para mostrar en el spip
22/* 2 Forzar la salida a <?xml version="1.0" encoding="ISO-8859-1"?> */
23//-----------------------------------------------------------------------------------------------------------------------
24
25
26function add_ceros($numero,$ceros) {
27$order_diez = explode(".",$numero);
28$dif_diez = $ceros - strlen($order_diez[0]);
29for($m = 0 ;
30$m < $dif_diez;
31$m++)
32{
33@$insertar_ceros .= 0;
34}
35return $insertar_ceros .= $numero;
36}
37
38$consultaspip = $HTTP_GET_VARS["consulta"];
39$indicespip = $HTTP_GET_VARS["indice"];
40$urlsite = 'http://archivos.bibliotecacta.org.ar';
41$urlxml = $urlsite . '/cgi-bin/wxis.cgi/iah/?IsisScript=iah/iah.xis&nextAction=xml&base=biblio&lang=E&exprSearch=' . $consultaspip . '$&indexSearch=' . $indicespip;
42
43$xml = simplexml_load_file($urlxml);
44
45$cantreg=0;
46
47foreach ($xml->prolog as $prolog){
48                //print_r($xml->prolog);
49                //print "<br><br>";
50                $consulta = $xml->prolog->expression;
51                $indice = $xml->prolog->index->u;
52                $totalregistrosbusq = $xml->prolog->{'total-hits'}; //para objetos que contengan - se debe llamar $xml->prolog->{'objeto'}
53}
54
55// $variables = array();
56
57foreach ($xml->record as $record){
58                //print_r($xml->record);
59                //print "<br><br>";
60
61                if (intval($record["mfn"])>0 && $cantreg==0) { print "<br><center><a href=$urlsite>BibliotecaCTA.org.ar</a> - Registros encontrados <br><br></center>"; }
62
63                echo "<b>Registro: " . $record["mfn"] . " </b><a href=http://archivos.bibliotecacta.org.ar/cgi-bin/wxis.cgi/iah/?IsisScript=iah/iah.xis&nextAction=lnk&base=biblio&lang=E&exprSearch=" . add_ceros($record["mfn"],6) . "&indexSearch=ZZ>Ver registro en biblioteca</a><br>";
64
65                $cantcampos = 0;
66                $varTitulo="";
67                $varTituloRevista="";
68                $varAutor="";
69                $varAutorInst="";
70                $varTemas="";
71                $varPDF="";
72       
73                $cantcampos = 0;
74                foreach ($record->field as $field){
75               
76                        $campo = intval($field["tag"]);
77                        $contenido = $xml->record[$cantreg]->field[$cantcampos];
78                        if ($contenido) { 
79                                //print "<i>Campo " . $campo . ":</i> " . $contenido . "<br>";  // comentar formato all (no utilizado en producción)
80                                // $variables[$campo] = $contenido; //carga los numeros de campo y el contenido en un array asociativo
81                                //Título
82                                if ($campo==12) { if ($varTitulo=="") { $varTitulo = $contenido; } else { $varTitulo .= "; " . $contenido; } } 
83                                if ($campo==18) { if ($varTitulo=="") { $varTitulo = $contenido; } else { $varTitulo .= "; " . $contenido; } } 
84                                if ($campo==25) { if ($varTitulo=="") { $varTitulo = $contenido; } else { $varTitulo .= "; " . $contenido; } } 
85                                //Autor
86                                if ($campo==10) { if ($varAutor=="") { $varAutor = $contenido; } else { $varAutor .= "; " . $contenido; } }
87                                if ($campo==16) { if ($varAutor=="") { $varAutor = $contenido; } else { $varAutor .= "; " . $contenido; } }     
88                                if ($campo==23) { if ($varAutor=="") { $varAutor = $contenido; } else { $varAutor .= "; " . $contenido; } }     
89                                //Autores Institucionales
90                                if ($campo==11) { if ($varAutorInst=="") { $varAutorInst = $contenido; } else { $varAutorInst .= "; " . $contenido; } }
91                                if ($campo==17) { if ($varAutorInst=="") { $varAutorInst = $contenido; } else { $varAutorInst .= "; " . $contenido; } }
92                                if ($campo==24) { if ($varAutorInst=="") { $varAutorInst = $contenido; } else { $varAutorInst .= "; " . $contenido; } }
93                                if ($campo==50) { if ($varAutorInst=="") { $varAutorInst = $contenido; } else { $varAutorInst .= "; " . $contenido; } }
94                                if ($campo==52) { if ($varAutorInst=="") { $varAutorInst = $contenido; } else { $varAutorInst .= "; " . $contenido; } }
95                                if ($campo==58) { if ($varAutorInst=="") { $varAutorInst = $contenido; } else { $varAutorInst .= "; " . $contenido; } }
96                                //Título de revista
97                                if ($campo==30) { $varTituloRevista=$contenido; }
98                                //temas
99                                if ($campo==76)  { if ($varTemas=="") { $varTemas = $contenido; } else { $varTemas .= "; " . $contenido; } }
100                                //PDF
101                                if ($campo==999) { $varPDF=$contenido; }
102                        }
103
104                        $cantcampos = $cantcampos + 1;
105                }
106
107                        //IMPRIMIR EL REGISTRO FORMATEADO
108                        if ($varAutorInst) {print "<i>Autor/es Institucional/es: </i>" . $varAutorInst . "<br>";}
109                        if ($varAutor) {print "<i>Autor/es: </i>" . $varAutor . "<br>";}
110                        if ($varTitulo) {print "<i>Título: </i>" . $varTitulo . "<br>";}
111                        if ($varTituloRevista) {print "<i>En: </i>" . $varTituloRevista . "<br>";}
112                        if ($varTemas) {print "<i>Temas: </i>" . $varTemas . "<br>";}
113                        if ($varPDF) {print "<a href=http://www.bibliotecacta.org.ar/bases/pdf/" . $varPDF . ".pdf>Ver documento On-Line</a><br>";}
114
115                $cantreg = $cantreg + 1;
116                echo "<br><br>";
117        }
118        print "<br><br>
119
120        Cantidad de registros encontrados: $totalregistrosbusq <br><br>
121
122        <a href=\"http://archivos.bibliotecacta.org.ar/cgi-bin/wxis.cgi/iah/?IsisScript=iah/iah.xis&nextAction=search&base=biblio&lang=E&exprSearch=$consulta&indexSearch=$indice\">mas resultados en biblioteca <!-- ($totalregistros) --></a>";
123
124        print "<br><br><a href=\"http://archivos.bibliotecacta.org.ar/cgi-bin/wxis.cgi/iah/?IsisScript=iah/iah.xis&nextAction=xml&base=biblio&lang=E&exprSearch=$consulta&indexSearch=$indice\">ver del XML</a>";
125
126        //print "<pre><br><br><br>";
127        //print_r($variables);
128        //print "</pre><br>";
129
130?>
131
132
133
134
135
136
Note: See TracBrowser for help on using the repository browser.