1): // si hay m·s de un dato, se concatenan los elementos del arreglo separ·ndolos por "--" $materia=implode("--",$tmpData); else: // si no, no se concatenea nada $materia=$tmpData[0]; endif; if ($materia != ""){ switch ($output): case "screen": echo "   $materia
"; break; case "array": $miarray[$i]=$materia; break; endswitch; } endfor; if ($output=="array") return $miarray; else return; } function muestra_clasificacion($material){ // Daniel Aguilar. 20050330. // Esta funcion devuelve las distintas versiones de la clasificacion, seg˙n las colecciones que tenga asociadas el registro. $q=mysql_query("SELECT DISTINCT c.clasificacion,o.iniciales FROM tipo_obra AS o INNER JOIN ejemplares AS e ON o.idtipoobra=e.idtipoobra INNER JOIN clasificacion AS c ON c.idmaterial=e.idmaterial WHERE e.idmaterial=$material"); $str = ""; while($r=mysql_fetch_array($q)){ if($r["iniciales"] != "" && strtoupper($r["iniciales"]) != substr(strtoupper($r["clasificacion"]),-strlen($r["iniciales"]))) $str .= "
Clasificación: ".$r["clasificacion"]." ".$r["iniciales"]; else $str .= "
Clasificación: ".$r["clasificacion"]; } return $str; } function listaInventarios($material){ $rx = mysql_query("SELECT idejemplar FROM ejemplares WHERE idmaterial='$material' AND estado != '3'"); $total = mysql_num_rows($rx); if($total > 0){ $msg = ($total > 1) ? "inventarios activos: " : "inventario activo: "; echo "$total $msg"; while($items=mysql_fetch_array($rx)){ echo $items["idejemplar"].", "; } }else{ echo "
No se encontraron ejemplares activos!"; } } $mes = array("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"); echo "

Lista completa de $recurso en su Biblioteca "P. Florentino Idoate S.J."
hasta ".$mes[date("m")-1].", ".date("Y")."

"; echo "
"; $link = abrir_db(); $qt = mysql_query("CREATE TEMPORARY TABLE `sort_temp` ( `idmaterial` DOUBLE NOT NULL, `llave` TEXT NOT NULL, PRIMARY KEY (`idmaterial`))", $link); switch($recurso): case "Mapas": $q = mysql_query("INSERT IGNORE INTO sort_temp SELECT DISTINCT m.idmaterial,t.titulos FROM materias AS m INNER JOIN titulos AS t ON t.idmaterial = m.idmaterial WHERE m.materias LIKE '%mapas%'", $link); break; case "Musica": $q = mysql_query("INSERT IGNORE INTO sort_temp SELECT DISTINCT m.idmaterial,t.titulos FROM materias AS m INNER JOIN titulos AS t ON t.idmaterial = m.idmaterial WHERE m.materias LIKE '%musica%'", $link); break; case "Videos": $q = mysql_query("INSERT IGNORE INTO sort_temp SELECT DISTINCT m.idmaterial,t.titulos FROM tipomaterial AS mat INNER JOIN materiales AS m ON m.idtipmat=mat.idtipmat INNER JOIN titulos AS t ON t.idmaterial = m.idmaterial WHERE mat.idtipmat = 5 or mat.idtipmat = 7", $link); break; case "Diapositivas": $q = mysql_query("INSERT IGNORE INTO sort_temp SELECT DISTINCT t.idmaterial,t.titulos FROM titulos AS t WHERE t.titulos LIKE '%[diapositivas]%'", $link); break; endswitch; // Ordenando los resultados temporales $query = mysql_query("SELECT * FROM sort_temp WHERE 1", $link); while ($r = mysql_fetch_array($query)){ $sin_articulo = quitaArticulo($r["llave"]); $title = mysql_query("UPDATE sort_temp SET llave = \"$sin_articulo\" WHERE idmaterial = ".$r["idmaterial"], $link); } $query = mysql_query("SELECT idmaterial FROM sort_temp WHERE 1 ORDER BY llave ASC"); echo ""; $i = 0; while ($r = mysql_fetch_array($query)): $q2 = mysql_query("SELECT * FROM clasificacion WHERE idmaterial = ".$r["idmaterial"]); while($r2 = mysql_fetch_array($q2)): $q3 = mysql_query("SELECT t.titulos, c.datos, c.etiqueta, c.idmaterial, c.subcampo FROM campos AS c INNER JOIN titulos AS t ON t.idmaterial = c.idmaterial WHERE c.idmaterial = ".$r2["idmaterial"]." ORDER BY c.idcampo"); $titulos = ""; $autores = ""; $adqui = ""; $descFis = ""; $idioma = ""; while($r4 = mysql_fetch_array($q3)): if($r4["etiqueta"] == '260'): $adqui .= $r4["datos"]." "; endif; $titulo = $r4["titulos"]; if($r4["etiqueta"]=='100' || ($r4["etiqueta"]=='700' && $r4["ocurrencia"]==1)): $autores = $r4["datos"]." "; endif; if($r4["etiqueta"] == '300'): $descFis .= $r4["datos"]." "; endif; if($r4["etiqueta"] == '041'): $idioma .= $r4["datos"]." "; endif; if($r4["etiqueta"] == '440'): $arreglo = listaMaterias($r["idmaterial"], "440", "array"); if(is_array($arreglo)){ $serie = "
Información de serie:
"; while(list($k,$v) = each($arreglo)){ if($v != "") $serie .= "$v
"; } } endif; endwhile; // corrigiendo el autor $autor = listaMaterias($r2["idmaterial"], "100", "array"); $clasif2 = muestra_clasificacion($r2["idmaterial"]); $i++; if(strrpos($titulo,"/") > 0){ $titulo = substr($titulo,0,strpos($titulo,' /') + 2); } $titulo = "$titulo"; $autor[1] = str_replace(",;",",",$autor[1]); $autor[1] = str_replace(".;",".",$autor[1]); $adqui = str_replace(".;",".",$adqui); $idioma = str_replace("%",", ",$idioma); if ($autor[1] != "") $autor[1] .= ";"; $descFis = ($descFis != "") ? "
Descripción Física: ".$descFis : ""; $idioma = ($idioma != "") ? "
Idioma(s): ".$idioma : ""; echo ""; endwhile; endwhile; echo "
$i."; Echo $titulo; echo "
Autor:".$autor[1]." $adqui $clasif2 $descFis $idioma "; echo "$serie"; // if any /* echo "Materias:
"; listaMaterias($r2["idmaterial"], "100", "screen"); listaMaterias($r2["idmaterial"], "110", "screen"); listaMaterias($r2["idmaterial"], "111", "screen"); listaMaterias($r2["idmaterial"], "600", "screen"); listaMaterias($r2["idmaterial"], "610", "screen"); listaMaterias($r2["idmaterial"], "611", "screen"); listaMaterias($r2["idmaterial"], "630", "screen"); listaMaterias($r2["idmaterial"], "650", "screen"); listaMaterias($r2["idmaterial"], "651", "screen"); listaMaterias($r2["idmaterial"], "700", "screen"); listaMaterias($r2["idmaterial"], "710", "screen"); listaMaterias($r2["idmaterial"], "711", "screen"); listaMaterias($r2["idmaterial"], "740", "screen"); */ echo "
Inventarios: "; listaInventarios($r2["idmaterial"]); echo "

"; ?>