Modificar rtf en el servidor - parte 2
Publicado por sirez (203 intervenciones) el 11/04/2012 23:14:52
Saludos.
una vez solucionado el inconveniente de la ruta utilizando:
$fsalida=$_SERVER['DOCUMENT_ROOT']."/prueba/".$fsalida;
me permite leer el archivo rtf e incluso lo muestra en pantalla...
echo "plantilla: ".$txtplantilla;
la situacion es la siguiente: el archivo certificado.rtf que se supone que genera el programa no existe por ningun lado.
cuando hago clic sobre obtener rtf, marca error 404 y en la direccion del navegado me muestra el siguiente enlace:
http://www.MIDOMINIO.com/var/www/vhosts/MIDOMINIO.com/httpdocs/prueba/certificado.rtf
no entiendo esto /var/www/vhosts/ y httpdocs que está incluido en la direccion. El programa simplemente debería ir a:
http://www.MIDOMINIO.com/prueba/certificado.rtf
busco en el servidor el certificado.rtf en http://www.MIDOMINIO.com/prueba/ pero no aparece.
tenia la duda respecto a mi conexion a la BD pero no es eso, ya que tampoco funciona con valores introducidos manualmente en el scrips.
==============================================
repito el codigo:
gracias nuevamente
una vez solucionado el inconveniente de la ruta utilizando:
$fsalida=$_SERVER['DOCUMENT_ROOT']."/prueba/".$fsalida;
me permite leer el archivo rtf e incluso lo muestra en pantalla...
echo "plantilla: ".$txtplantilla;
la situacion es la siguiente: el archivo certificado.rtf que se supone que genera el programa no existe por ningun lado.
cuando hago clic sobre obtener rtf, marca error 404 y en la direccion del navegado me muestra el siguiente enlace:
http://www.MIDOMINIO.com/var/www/vhosts/MIDOMINIO.com/httpdocs/prueba/certificado.rtf
no entiendo esto /var/www/vhosts/ y httpdocs que está incluido en la direccion. El programa simplemente debería ir a:
http://www.MIDOMINIO.com/prueba/certificado.rtf
busco en el servidor el certificado.rtf en http://www.MIDOMINIO.com/prueba/ pero no aparece.
tenia la duda respecto a mi conexion a la BD pero no es eso, ya que tampoco funciona con valores introducidos manualmente en el scrips.
==============================================
repito el codigo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
//Funcion que lee un archivo de texto y lo mete en una cadena
function leef ($fichero) {
$texto = file($fichero);
$tamleef = sizeof($texto);
for ($n=0;$n<$tamleef;$n++) {$todo= $todo.$texto[$n];}
return $todo;
}
//funcion que genera un rtf
function rtf($sql, $plantilla, $fsalida, $matequivalencias){
//$pre=time();
$fsalida=$_SERVER['DOCUMENT_ROOT']."/prueba/".$fsalida;
mysql_connect("localhost", "XXXXXXXXXX", "YYYYYYYY");
//Paso no 1.-Leo una plantilla rtf
$txtplantilla = leef($plantilla);
//echo "plantilla: ".$txtplantilla;
// aqui me muestra el archivo... pero no me interesa verlo
//Paso no.2 Saca cabecera, el cuerpo y el final
$matriz=explode("sectd", $txtplantilla);
$cabecera=$matriz[0]."sectd";
$inicio=strlen($cabecera);
$final=strrpos($txtplantilla,"}");
$largo=$final-$inicio;
$cuerpo=substr($txtplantilla, $inicio, $largo);
//Paso no.3 Escribo el fichero
$punt = fopen($fsalida, "w");
fputs($punt, $cabecera);
mysql_select_db("MI BASE DE DATOS");
$result =mysql_query($sql);
While($row=mysql_fetch_object($result)){
$despues=$cuerpo;
foreach ($matequivalencias as $dato) {
$datosql=$row->$dato[1];
$datosql= stripslashes ($datosql);
$datortf=$dato[0];
$despues=str_replace($datortf,$datosql,$despues);
}
fputs($punt,$despues);
$saltopag="\par \page \par";
fputs($punt,$saltopag);
}
fputs($punt,"}");
fclose ($punt);
return $fsalida;
}
$plantilla = $_SERVER['DOCUMENT_ROOT']."/prueba/"."plantilla.rtf";
$sql = "SELECT nombre, municipio from usuarios";
$equivalencias[0][0]="#*nombre*#";
$equivalencias[0][1]="nombre";
$equivalencias[1][0]="#*sitio*#";
$equivalencias[1][1]="municipio";
$salida = rtf($sql, $plantilla, "certificado.rtf", $equivalencias);
$salida ="<A href='$salida'>Obtener RTF</a>";
echo "<p><br><br>$salida</p>";
?>
gracias nuevamente
Valora esta pregunta


0