1 | <?php |
---|
2 | // ************************************************************************************************************************************************* |
---|
3 | // Aplicación WEB: ogAdmWebCon. |
---|
4 | // Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla |
---|
5 | // Fecha Creación: 2009-2010 |
---|
6 | // Fecha Última modificación: Agosto-2010 |
---|
7 | // Nombre del fichero: TomaDato.php |
---|
8 | // Descripción : |
---|
9 | // Recupera un dato de una tabla |
---|
10 | // Parametros: |
---|
11 | // - cmd:Un comando ya operativo (con conexión abierta) |
---|
12 | // - idcentro:Centro al que pertene el registro donde se encuentra el dato a recuperar, será 0 para no contemplar este dato |
---|
13 | // - nombretabla: Nombre de la tabla origen de los datos |
---|
14 | // - identificador: Valor del campo identificador del registro (cadena separada por comas si hay varios) |
---|
15 | // - nombreid: Nombre del campo identificador del registro (cadena separada por comas si hay varios) |
---|
16 | // - nombreliteral: Nombre del campo que se quiere recuperar |
---|
17 | // - swid: Indica 0= El identificador es tipo alfanumérico 1= EI identificador es tipo numérico ( valor por defecto) |
---|
18 | // (*) En el caso de haber varios identificadores todos deben ser del mismo tipo ( numérico o alfanumérico) |
---|
19 | //************************************************************************************************************************************************* |
---|
20 | function TomaDato($cmd,$idcentro,$nombretabla,$identificador,$nombreid,$nombreliteral,$swid=0){ |
---|
21 | $Dato=""; |
---|
22 | if (empty($identificador)) return($Dato); |
---|
23 | |
---|
24 | if($swid==0) $ch='"'; else $ch=""; // Caracter comillas para campos alfanuméricos |
---|
25 | $auxidentificador=split(";",$identificador); |
---|
26 | $auxnombreid=split(";",$nombreid); |
---|
27 | |
---|
28 | $clausulaWhere=" WHERE ".$auxnombreid[0]."=".$ch.$auxidentificador[0].$ch; |
---|
29 | for ($i=1;$i<sizeof($auxidentificador);$i++) |
---|
30 | $clausulaWhere.=" AND ".$auxnombreid[$i]."=".$ch.$auxidentificador[$i].$ch; |
---|
31 | $cmd->texto="SELECT * FROM ".$nombretabla.$clausulaWhere; |
---|
32 | if (!empty($idcentro)) |
---|
33 | $cmd->texto.=" AND idcentro=".$idcentro; |
---|
34 | $rs=new Recordset; |
---|
35 | $rs->Comando=&$cmd; |
---|
36 | if (!$rs->Abrir()) return(""); // Error al abrir recordset |
---|
37 | if (!$rs->EOF) |
---|
38 | $Dato.=$rs->campos[$nombreliteral]; |
---|
39 | $rs->Cerrar(); |
---|
40 | return($Dato); |
---|
41 | } |
---|