Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/01/2012, 17:14
kriss8725
 
Fecha de Ingreso: mayo-2009
Mensajes: 242
Antigüedad: 15 años
Puntos: 2
Pregunta Reemplazo de caracteres en archivo RTF

Buenas tardes, segui un tutorial sobre como reemplazar palabras en un archivo RTF y lo implemente con existo, la primera vez que lo ejecute funciono bien, reemplazo todas las palabras que tenia que reemplazar pero decidi cambiar de nombre las variables o palabras que se reemplazan en el archivo y ya no funciono ya no reemplaza nada, si me genera el archivo pero tal cual como el original sin ningun reemplazo y no logro saber porque, aqui el codigo:

Código PHP:
public function imprimirConstancia(){//Inicio sección imprimirConstancia
        
        
$idMaestro $_POST['id'];
        
$equivalencias = array();
    
        
$maestro $this->consulta("SELECT maestros.nombre,maestros.num_constancia,maestros.fecha_alta,maestros.fecha_asesoria_desde,configuraciones.auxiliar_extension FROM maestros INNER JOIN configuraciones ON 1 = configuraciones.idConfiguracion WHERE idMaestro = '".$idMaestro."'");
        
$resultMaestro $this->fetch_array($maestro);
        foreach(
$resultMaestro as $rowMaestro):
          
$equivalencias[0][0] = "#*NUMCONSTANCIA*#";
          
$equivalencias[0][1] = $rowMaestro['num_constancia'];
          
$fechaAlta explode("-",$rowMaestro['fecha_alta']);
          
$equivalencias[1][0] = "#*FECHA*#";
          
$equivalencias[1][1] = $fechaAlta[2]."/".$fechaAlta[1]."/".$fechaAlta[0];
          
$equivalencias[2][0] = "#*MAESTRO*#";
          
$equivalencias[2][1] = $rowMaestro['nombre'];
          
$equivalencias[3][0] = "#*HORAS*#";
          
$equivalencias[3][1] = "130";
          
$fechaDesde explode("-",$rowMaestro['fecha_asesoria_desde']);
          
$equivalencias[4][0] = "#*FECHADESDE*#";
          
$equivalencias[4][1] = $fechaDesde[2]."/".$fechaDesde[1]."/".$fechaDesde[0];
          
setlocale(LC_TIME'spanish');
          
$fechaActual strftime('%d de %B de %Y'strtotime(date("Y-m-d"))); 
          
$equivalencias[5][0] = "#*LETRASFECHA*#";
          
$equivalencias[5][1] = "pruebas";
          
$equivalencias[6][0] = "#*AUXILIAREXTENSION*#";
          
$equivalencias[6][1] = $rowMaestro['auxiliar_extension'];
        endforeach;
        
        
$this->generarRTF($equivalencias,"constancia_maestros.rtf","constancia_maestros_salida.rtf");
     }
//Fin sección imprimirConstancia



public function generarRTF($equivalencias,$nombreArchivoOrigen,$nombreArchivoSalida){//Inicio seccion generarRTF
        //Ruta de archivos
        
$archivoOrigen $this->baseURLAbsoluta.'archivosRTF/'.$nombreArchivoOrigen;
        
$archivoSalida $this->baseURLAbsoluta.'archivosRTF/'.$nombreArchivoSalida;
        
//Obtenemos el contenido del archivo
        
$texto '';
        
$texto file_get_contents($archivoOrigen);
        
//Obtenemos cabecera del archivo
        
$matriz explode("sectd",$texto);
        
$cabecera $matriz[0]."sectd";
        
$inicio strlen($cabecera);
        
$final strrpos($texto,"}");
        
$largo $final $inicio;
        
$cuerpo substr($texto,$inicio,$largo);
        
//Escribir en el fichero
        
$punt fopen($archivoSalida,"w");
        
fputs($punt,$cabecera);
        
$despues '';
        
$despues $cuerpo;
        
$i 0;
        while(
$i <= count($equivalencias) - 1){
          
$datoSql stripslashes(strtoupper(utf8_decode($equivalencias[$i][1])));
          
$datoRtf $equivalencias[$i][0];
          
$despues str_replace($datoRtf,$datoSql,$despues);
          
$i++;
        }
        
//Terminamos de crear el fichero de salida
        
fputs($punt,$despues);
        
fputs($punt,"}");
        
fclose($punt);
        
      }
//Fin seccion generarRTF