Autor Zpráva
fandam007
Profil *
Zdravím, chci, aby se do souboru txt přidávala data postupně za sebou tak, jak byla odeslána z formuláře. Jenže se mi starší obsah vždy nahradí novým.

Používám 4 soubory: index.php (ve kterém je formulář), odesli.php (který obsahuje nastavení vkládání), data.txt (kde jsou data), prichozi.txt (kde se zobrazuje obsah souboru data.txt).

Index.php obsahuje toto:

<form action="odesli.php">
    <div id="ah">Kontaktuj své rádio!</div>
        Jméno: <br> <input name="vase_jmeno"><br>
        Zpráva: <br> <textarea name="zprava" cols="30" rows="10"></textarea><br>
            <input type=submit value="Odeslat">
</div></div></body>

odesli.php obsahuje toto:

<!-- VYTVOŘIL: TOMÁŠ JAREŠ - WWW.TOMASJARES.COM Zachovejte, prosím, copyright (tento radek)-->
<meta charset="UTF-8">
<?php
$a = htmlspecialchars($_GET['vase_jmeno']);
$d = htmlspecialchars($_GET['zprava']);
 
$data = file_get_contents('data.txt');
file_put_contents('prichozi/data.txt', 'Jméno: '.$a.'<br>Zpráva: '.$d.'<hr>'.$data);
?>
Úspěšně odesláno na server!
<a href="/"><button>ZPĚT</button></a>

A zbylé dva asi nemá cenu předkládat
Co mám poupravit?
Taps
Profil
fandam007:
přidej do funkce file_put_contents parametr, viz níže
<?
file_put_contents('prichozi/data.txt', 'Jméno: '.$a.'<br>Zpráva: '.$d.'<hr>'.$data,FILE_APPEND);
?>
fandam007
Profil *
Sice funguje, ale chtěl bych novější příspěvky zezhora a ne zespoda
Alphard
Profil
V [#1] se neshodují názvy souborů. Kdyby nebyl potlačen výpis chyb, mělo by to hlásit neexistenci souboru (resp. se načítá špatný soubor data.txt).

PS: s určitou (relativně malou) pravděpodobností někdy stejně dojde k takovému paralelnímu přístupu, že vám to ten soubor vymaže.
Taps
Profil
fandam007,
zkus níže uvedené
<?
$puvodni = file_get_contents('prichozi/data.txt');
$nove =  'Jméno: '.$a.'<br>Zpráva: '.$d.'<hr>'.$data;
file_put_contents('prichozi/data.txt', $nove.$puvodni);
?>
fandam007
Profil *
Už se to zase nahrazuje
Trsak
Profil
fandam007:
Musíš v proměnné puvodni ve funkci file_get_contents upravit cestu k soboru na prichozi/data.txt.
fandam007
Profil *
Momentálně nechápu, co po mně vlastně chcete. Můžete mi prosím poslat kód?
Taps
Profil
fandam007:
viz [#5] Taps
Marschmallow
Profil
fandam007:
Rozdíl mezi souborem data.txt a prichozi/data.txt.
fandam007
Profil *
Dnes jsem vytvořil zkrácený kód

<?php
$a = htmlspecialchars($_GET['vase_jmeno']);
 
$data = file_get_contents('data.txt');
file_put_contents('data.txt', 'Jméno: '.$a. .$data);
?>
, který bohužel nefunguje, kde je chyba?
weroro
Profil
Je tam jedna bodka naviac -> file_put_contents('data.txt', 'Jméno: '.$a. .$data);

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: