zapis dat na zaciatok suboru

Programovacie jazyky, rady, poradňa...
orava
Novice
Novice
Príspevky: 8
Registrovaný: 14 apr 2010, 18:21
Bydlisko: Stargate Atlantis

zapis dat na zaciatok suboru

Príspevok od používateľa orava »

zapis dat na zaciatok suboru
viem ze sa to tu uz niekde vyskytuje ale nepochopil som to

na internete som nasiel PHP script na diskusiu lenze ono to pise na koniec suboru, v stranke to pise pod seba.
moja stranka je : http://www.sgo.over.cz
ukazka scriptu:

Kód: Vybrať všetko

<?
$jmeno = $_POST['jmeno'];
$email = $_POST['email'];
$web = $_POST['web'];
$zprava = $_POST['zprava'];

$jmeno=HTMLSpecialChars($jmeno); //převede některé znaky na entity
$email=HTMLSpecialChars($email);
$web=HTMLSpecialChars($web);
$zprava=HTMLSpecialChars($zprava);

$jmeno=stripslashes($jmeno); //odstraní lomítka
$email=stripslashes($email);
$web=stripslashes($web);
$zprava=stripslashes($zprava);

$zprava = str_replace("\n"," <br> ", $zprava); //nové řádky nahradí <br>
$zprava = substr($zprava, 0, 10000);//zpráva bude mít maximálně 10000 znaků pomocí substr

$email_celek=" | <a href='mailto:$email'>$email</a>";
$web_celek=" | <a href='$web'>$web</a>";

if ($web=="http://"){$web_celek="";} //pokud se nevyplní nic se nevypíše
if ($email==""){$email_celek="";} // -||-

if ($zprava!="" and $jmeno!=""){ //provede se pokud není prázdná zpráva a jméno
$celek="<p>Správu poslal <strong>$jmeno</strong>$email_celek $web_celek</p><p>$zprava</p><hr>";
$soubor = fopen ('data-2.inc','a'); //otevře soubor pro doplňování
fwrite ($soubor, $celek); //zapíše zprávu
fclose ($soubor); //zavře soubor
}
?>
za pomoc vam dakujem
L.E.n
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 289
Registrovaný: 22 mar 2010, 19:47
Bydlisko: Broken mind
Kontaktovať používateľa:

Re: zapis dat na zaciatok suboru

Príspevok od používateľa L.E.n »

Mohol by si po otvorení súboru použiť rewind, potom zapísal to čo potrebuješ a hneď potom zapísal zvyšok - ktorý máš prečítaný. Nejako takto:

Kód: Vybrať všetko

$suborik = "data-2.inc";
$soubor = fopen ($suborik,'a'); //otevře soubor pro doplňování
$trapas = fread($soubor, filesize($suborik));
rewind($soubor);
fwrite($soubor, $trapas); // zapíše najprv to čo bolo
fwrite ($soubor, $celek); //zapíše zprávu
fclose ($soubor); //zavře soubor
Napísať odpoveď