CGI - CGI MANEJO DE ARCHIVOS .DAT

 
Vista:

CGI MANEJO DE ARCHIVOS .DAT

Publicado por Julio C (1 intervención) el 06/06/2005 18:06:52
Hola amigos, espero alguien me pueda orientar, acerca de como trabajar des de CGI, abrir, leer y escribir en un archivo .dat

intentaba hacerlo como normalmente en lenguaje C pero me marca un error, algo de error premature in Headers o algo por el estilo..

de antemano gracias y espero muy pronto sus respuestas......
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Leer y escribir en un archivo .dat desde un script CGI

Publicado por Alejandro (140 intervenciones) el 24/08/2023 20:19:58
Si estás tratando de abrir, leer y escribir en un archivo `.dat` desde un script CGI en C, es importante asegurarte de que el manejo de archivos y la interacción con el entorno CGI se hagan correctamente. Aquí hay un ejemplo simple de cómo podrías hacerlo:

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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main() {
    // Configurar las cabeceras CGI
    printf("Content-type: text/html\n\n");
 
    // Abre el archivo .dat en modo lectura
    FILE *archivo = fopen("archivo.dat", "r");
    if (archivo == NULL) {
        printf("Error al abrir el archivo\n");
        return 1;
    }
 
    // Lee y muestra el contenido del archivo
    char linea[100];
    while (fgets(linea, sizeof(linea), archivo)) {
        printf("Línea leída: %s<br>", linea);
    }
 
    // Cierra el archivo
    fclose(archivo);
 
    // Abre el archivo .dat en modo escritura (agregar)
    archivo = fopen("archivo.dat", "a");
    if (archivo == NULL) {
        printf("Error al abrir el archivo para escritura\n");
        return 1;
    }
 
    // Agrega una nueva línea al archivo
    fprintf(archivo, "Nueva línea agregada desde el CGI\n");
 
    // Cierra el archivo nuevamente
    fclose(archivo);
 
    return 0;
}

Este ejemplo asume que el archivo `archivo.dat` ya existe en el mismo directorio que el script CGI. Ten en cuenta que en muchos servidores, el script CGI puede tener restricciones de permisos en cuanto a la lectura y escritura de archivos.

Además, asegúrate de que las cabeceras CGI (`Content-type` y dos saltos de línea) se impriman antes de cualquier otro contenido en el script, ya que esto puede causar problemas de visualización o ejecución si no se manejan correctamente.

Si sigues experimentando problemas de "premature end of script headers", puede deberse a errores en el formato de las cabeceras CGI o problemas en el código que afectan la ejecución del script. En ese caso, revisa detenidamente el código y verifica que esté en el formato adecuado para un script CGI.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar