[SOLUCIONADO] Leer un archivo de texto en la web

Iniciado por fortil, Abril 01, 2012, 02:18:10 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Abril 01, 2012, 02:18:10 PM Ultima modificación: Marzo 12, 2014, 10:14:58 PM por Expermicid
Hola a todos

resulta que me he creado un pequeño codigo para generar un archivo de texto con php, pero resulta que ni con el navegador puedo leer dicho archivo, me toca por ftp mirarlo y si abre normalmente y se puede leer editor.

mi pregunta es que puede estar pasando?

este es el codigo:
Código: html5
<html>
<head>
    <title>Mi texto</title>
</head>

<body>
<?
if (!$_POST){
?>
    <form action="index.php" method="post">
    <input type="text" name="name" size="30">
    <br>
    <input type="submit" value="Enviar">
    </form>
<?
}else{

function getRealIP() {
        if (!empty($_SERVER['HTTP_CLIENT_IP']))
            return $_SERVER['HTTP_CLIENT_IP'];
           
        if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
            return $_SERVER['HTTP_X_FORWARDED_FOR'];
       
        return $_SERVER['REMOTE_ADDR'];
}
$IP=getRealIP();
$name=$_POST['name'];
$ar=fopen("lista.txt","w") or die("Problemas en la creacion");
  fputs($ar,"$IP");
  fputs($ar,"\t");
  fputs($ar,"$name");
  fputs($ar,"\n");
  fclose($ar);
  echo "Los datos se cargaron correctamente.";
}
?>
</body></html>


gracias

Leer el archivo:
Código: text
<?php
$archivo = file("archivo.txt");
$lineas = count($archivo); for($i=0; $i <
$lineas; $i++){
echo $archivo[$i]; } ?>



Generar el archivo:
Código: text
<?php
$extension = ".txt";
$nombre_archivo = $_GET['nombre'].$extension;
$carpeta_destino = dirname(__FILE__);
$archivo = $carpeta_destino ."/".$nombre_archivo;
$f = fopen($archivo,"w");
fputs($f,"");
fclose($f);
?>
No esperes nada, vive la vida, y que los demas hagan lo que ellos creen.

Buenas,

para algo tan sencillo os complicáis bastante la vida...

Para leer el archivo, tan fácil como:
Código: text
<?php
echo file_get_contents("archivo.txt"); // Si quieres que las lineas sean saltos de lineas reemplazas con str_replace \n por <br>
?>


y para guardar:
Código: text
<?php
if(!file_exists("archivo.txt")) @touch("archivo.txt"); //Si no existe el archivo, lo creamos
@chmod("archivo.txt",777); //Le damos permisos CHMOD 777
file_put_contents("archivo.txt",htmlentities($_GET["contenido"])); // Insertamos el texto en el archivo "archivo.txt" de tal forma que evitemos un XSS simple
?>


En realidad solo se usan dos funciones.
Obtener: file_get_contents
Guardar: file_put_contents

Y listo! :D

Gracias a todos y FrenetikK, me sirvió mucho