Foros del Web » Programando para Internet » PHP »

Como tener mas variables en un txt

Estas en el tema de Como tener mas variables en un txt en el foro de PHP en Foros del Web. Saludos. Tengo una variable en un txt estructurada de la siguiente manera ----------------------------- <?php $boletin1 = '599'; ?> ----------------------------- Para no tener muchos archivos txt ...
  #1 (permalink)  
Antiguo 08/05/2007, 15:04
 
Fecha de Ingreso: septiembre-2006
Mensajes: 46
Antigüedad: 17 años, 7 meses
Puntos: 0
Como tener mas variables en un txt

Saludos. Tengo una variable en un txt estructurada de la siguiente manera
-----------------------------
<?php $boletin1 = '599'; ?>
-----------------------------
Para no tener muchos archivos txt intente poner mas variables de varias formas.
quedando de la siguiente manera
ejemplo1
<?php $boletin1 = '599'; ?>
<?php $boletin2 = '599'; ?>

ejemplo2
<?php $boletin1 = '599'; $boletin1 = '599';?>

Pero ninguna de estas maneras funcionaron por que la informacion se guarda solo una vez y al mostrarlas
echo "<b>$boletin1</b>";
echo "<b>$boletin2</b>";

solo me aparece la informacion de la ultima guardada.

Alguien me podria ayudar a utilizar mas variables en un solo archivo.

gracias
  #2 (permalink)  
Antiguo 08/05/2007, 16:19
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: Como tener mas variables en un txt

archivo de variables:

<?php
$var1 = "valor1";
$var2 = "valor2";
?>

archivo principal:
<?php
include('variables.php');
echo $var1;
?>

De esa forma funciona... ¿cómo lo estás haciendo vos?


saludos.
  #3 (permalink)  
Antiguo 09/05/2007, 16:26
 
Fecha de Ingreso: septiembre-2006
Mensajes: 46
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: Como tener mas variables en un txt

Resulta que tengo un formulario que manda la información a una variable que esta en un txt de la siguiente manera.

boletin.php
Código PHP:
<?php



if ($_POST['Submit']) {



extract($_POST);



$file_to_write 'archivo.txt';



$content .="<?php\n";

$content .="\$boletin1 = '$titulo';\n";

$content .="?>";



$fp fopen($file_to_write'w');

fwrite($fp$content);

fclose($fp);

echo 
"El titulo del Boletin fue grabada exitosamente en la base de datos <b>$file_to_write</b><br>";

}

include (
"archivo.txt");

echo 
'Titulo del Boletin: ';

echo 
"<b>$boletin1</b>";
echo 
"Ahora debe cambiar la nota</b><a hre=''> Cambiar</a>";

?>
el archivo.txt tiene las variables
<?php
$boletin1 = 'info1';
$boletin2 = 'info2';
?>

Ahora le voy agregar informacion a la variable $boletin2 con otro furmulario, que en realidad es el mismo codigo, solo que le cambio la varible a la que va dirigida la informacion

Código PHP:
<?php



if ($_POST['Submit']) {



extract($_POST);



$file_to_write 'archivo.txt';



$content .="<?php\n";

$content .="\$boletin2 = '$titulo';\n";

$content .="?>";



$fp fopen($file_to_write'w');

fwrite($fp$content);

fclose($fp);

echo 
"El titulo del Boletin fue grabada exitosamente en la base de datos <b>$file_to_write</b><br>";

}

include (
"archivo.txt");

echo 
'Titulo del Boletin: ';

echo 
"<b>$boletin2</b>";
echo 
"Ahora debe cambiar la nota</b><a hre=''> Cambiar</a>";

?>
Ahora creo el archivo bolotin.php y muestro mi informacion de las variables
Código PHP:
<? 
    
include ("archivo.txt");

echo 
"$boletin1";
echo 
"$boletin2";
?>
Y el resultado no es satis factorio pues solo me muestra la informacion de la ultima variable guardada, osea si $boletin1 recibio la informacio "Mañana es elecciones" y $boletin2 "El papa en brasil", solo me va a desplegar
"El papa en brasil"

Que es lo que esta mal, por favor
  #4 (permalink)  
Antiguo 10/05/2007, 08:36
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: Como tener mas variables en un txt

mejor, en vez de generar el archivo cada vez, manejalo con file(), que lo lee y genera un vector en el que cada entrada es una línea.
Así podés modificar la variable que necesites y agregar fácilmente otras.

Es lógico lo que te sucede, después de todo cada vez estás borrando el contenido del archivo (al abrirlo con la opción 'w') y escribiendo el valor de una sola variable...


Saludos.
  #5 (permalink)  
Antiguo 10/05/2007, 17:19
 
Fecha de Ingreso: septiembre-2006
Mensajes: 46
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: Como tener mas variables en un txt

tendras de casualidad un ejemplo de como hacer esto, lo he estado intentando de farias maneras, pero nada, me serviria mucho un ejemplo.

Gracias
  #6 (permalink)  
Antiguo 11/05/2007, 06:27
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: Como tener mas variables en un txt

El ejemplo más simple sería agregar una nueva variable al archivo:
Código PHP:
$lineas file("archivo");
$lineas[] = "\$boletinN = '$tituloN';\n"
Luego lo abrís fon fwrite y escribís con fwrite la cadena que devuelve
implode('', $lineas); (para escribirlo como una sola cadena, y el primer parámetro es vacío porque file no elimina los saltos de línea)

Modificar una variable sería un poco más complicado, creo que tenés 2 opciones:
1.- modificar la línea que la declara
2.- eliminar la línea que la declara y escribirla de nuevo con el método anterior

Supongamos que te decantas por la opción 1, yo lo haría de esta forma:
(sea $nombre una variable que guarda el nombre de la variable que querés modificar)

Código PHP:
$archivo file("archivo");

foreach(
$archivo as $linea) {
 if (
substr($linea1strlen($nombre) + 1) == $nombre) {
  
$linea "\$$nombre = '$titulo';\n";
 }

Este código se basa en la premisa de que la línea no tiene espacios al principio.
La idea es que si el comienzo de la cadena (sin tomar el $, por eso pongo 1 como parámetro de substr) es igual a $nombre, entonces se trata de la línea que declara la variable que quiero modificar.
Como siempre digo, revisalo bien antes de usarlo en serio, espero que te sirva.


Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:48.