Buenas tardes a todos,
Les escribo para ver si me pueden dar una mano en esta duda que tengo.
Hice un script el cual se conecta a la tabla empleado y obtiene el Codigo del carnet de todos los empleados y mediante un while busca en txt este valor y la que encuentre (el resultado siempre arroja 1, porque tiene un solo numero carnet) lo debe mostrar por pantalla.
acontinuacion muestro el contenido del txt, fijese que el valor a buscar es el numero que sale despues de "TRABAJADOR: "
Código HTML:
RECIBO DE PAGO PERIODO: 01/04/2010 AL: 30/04/2010
8 2010 COMPAÑIA: EUROCIENCIA, C.A. FECHA DE PAGO 15/04/2010 TRABAJADOR: 1781 PEPE JUAN NRO. CEDULA ID: NIDAD ORGANIZATIVA: GERENCIA DE SISTEMAS CARGO: ANALISTA DE CNC EN SISTEMAS FECHA DE INGRESO: 06/02/2008 CUENTA NRO.: 0060290202 SALARIO DIARIO 15,23 INSTITUCION: BANCO VENEZOLANO DE CREDITO
17153567
CODIGO CONCEPTO 1000 5000 5010 5020 5290 5500 SALARIO SEGURO SOCIAL OBLIGATORIO LEY REGIMEN PREST. DE EMPLEO LEY PRESTAC VIVIENDA Y HABIT DCTO POR COMPRA DE PRODUCTOS DCTO. COMPLEMENTO DEL MES
CANTIDAD 30,000 4,000 4,000 30,000 0,000 30,000
de acuerdo con el detalle anterior y firmo en señal de conformidad.
El concepto de Reembolso de Gastos corresponde a reintegro por gastos contra facturas presentadas por usted incurridas en el mes anterior.
Firma del Trabajador ACUMULADOS Devengado a la fecha: Prestaciones Sociales: Intereses s/Prest. Soc: 9.426,30 10.978,35 1.478,27 Vacaciones y Bono Vacacional Días pendientes por disfrutar: Días pendientes de pago: Días pendientes Bono Vacacional: 0,00 -14,00 -6,52
Y este es mi codigo que busca el valor del carnet en ese archivo.txt:
Código:
<?
$n=0;
try {
$dbh = new PDO("oci:dbname=SPI;host=1.0.0.202;port=1521","infocent","infocent");
} catch (PDOException $e) {
echo "Error: ". $e->getMessage();
exit;
}
$query = "SELECT FICTRA FROM NMM001";
$stmt = $dbh->prepare($query);
if ($stmt->execute()) {
$ficheros_nomina = array('us05351.txt');
while ($row = $stmt->fetch()) {
$carnet= $row['FICTRA'];
$fictra = 1;
foreach($ficheros_nomina as $fichero_nomina)
{
$contenido_fichero = file_get_contents($fichero_nomina);
preg_match_all("(["TRABAJADOR"]+:[$carnet]+)", $contenido_fichero);
foreach ($resultado[0] as $id)
{
echo $id;
$fictra++;
}
}
}
}
?>
el problema me da es con la sentencia preg_match_all, como hago para que busque: TRABAJADOR: + "el codigo del carnet que devuelve el sql"
como algo asi: TRABAJADOR: 1521 y si coincide que muestre el numero de carnet