Jump to content
php.lv forumi

txt faila rediģēšana..


Labrador

Recommended Posts

Lieta tāda, ka es vēlos izveidot tādu skriptu kurš varētu piemēram rediģēt "test.txt" failu. Piemēram pirmajā lapā teksta lauciņš tur kas parādas kamēr esošu "test.txt" saturu un tad tur kautko pierakstit un tad apstiprinaat taa kaa formu kas nosuuta uz PHP skriptu kas to visu paaredigjee.

Link to comment
Share on other sites

1) Atver failu: php.net/fopen un php.net/fread (vai arī vienkāršāk ar file_get_contents vai ko tādu)

2) Izvadam saturu iekš textarea. google: html textarea. Nosaucam (name atribūts) to textarea, piem., par 'test'. Formu veidojam ar method="post".

3) Pēc formas nosubmitēšanas varēši piekļūt $_POST['test'] mainīgajam, kas saturēs to textarea tekstu.

4) Atkal ar php.net/fopen un fwrite ierakstam šo tekstu atpakaļ failā.

 

Un vispār - konkretizē, kas tev nesanāk ?

Link to comment
Share on other sites

<? 
$fails = fopen('./fails.txt','w');
if($_POST['content']) fwrite($fails,$_POST['content']);
?>
<form method="post" action="">
<textarea name="content"><?=file_get_contents('./fails.txt')?></textarea> <br />
<input type="submit" value="save" />
</form>

 

apmeeram taa...

Edited by tmpjail
Link to comment
Share on other sites

paldies.. bet ir velviena problema, kad ieeju lapa kur tas taav skripts (#3 postaa) tur saakumaa tuksh laucinjaa bet tajaa fails.txt ir saturs.. kad vieniigi ierakstu kautko jaunu un spiezhu submit tad raada to saturu fails.txt failaa

Edited by Labrador
Link to comment
Share on other sites

Jā, un arī pēc vairākkārtēja refreša info izdzēšas?

 

Manis piedāvātais risinājums: darbojies ar trijiem failiem - fails.txt, index.php, check.php (nosaukumiem protams nav nozīme :D )

 

index.php

<form method="post" action="check.php">
<textarea name="content"><?=file_get_contents('./fails.txt')?></textarea> <br />
<input type="submit" value="save" />
</form>

 

check.php

<?
$fails = fopen('./fails.txt','w');
if($_POST['content']) fwrite($fails,$_POST['content']);
header ("Location: index.php");
?>

Vajadzētu strādāt...

Edited by hackerman
Link to comment
Share on other sites

par to tukshu laucinju probleema noveersta bet par to saglabaashanu laagaa neiet.. atveru index.php ievadu jaunu tekstu spiezhu save.. aizeju uz check.php == jaunais teksts neraadas paliek tas pats vecais.. :(

Link to comment
Share on other sites

Tev tač nevajag iet uz to check.php . Atver caur pārlūku index.php, ievadi textu, nospied save, un pārbaudi txt failu. Viņš automātiski iziet caur to check.php :) Redzi, iekš formas ir norādīts action="check.php", tas nozīmē, ka dati tiks sūtīti uz to failu, tālāk tas fails tev apstrādā informāciju un ar header ("Location: index.php"); tu tiec atmests atpakaļ uz index.php. Karoč tev caur pārlūku vispār nevajag "skārties" klāt failam check.php.

Link to comment
Share on other sites

textarea satura izdrukāšani iesaku pielietot arī htmlspecialchars($txt,ENT_QUOTES);

 

Pārliecināšanas testam: </textarea> pārējais teksts.

Link to comment
Share on other sites

Tev tač nevajag iet uz to check.php . Atver caur pārlūku index.php, ievadi textu, nospied save, un pārbaudi txt failu. Viņš automātiski iziet caur to check.php :) Redzi, iekš formas ir norādīts action="check.php", tas nozīmē, ka dati tiks sūtīti uz to failu, tālāk tas fails tev apstrādā informāciju un ar header ("Location: index.php"); tu tiec atmests atpakaļ uz index.php. Karoč tev caur pārlūku vispār nevajag "skārties" klāt failam check.php.

 

es visu to dariiju, klausies, tu paarbaudi savus scriptus pirms posteee..

Edited by Labrador
Link to comment
Share on other sites

oo paldies viss i kaartiibaa un veel viena lieta kaa izdariit ja es veelos piemeeram no vairaakiem laukiem iformaaciju iedabuut tajaa "fails.txt" piem. Vārds: [lauks-vards] Uzvārds: [lauks-uzvards] [submit] un tas viss aiziet uz scriptu un tas paarredjigjee to "fails.txt" uz piemeeram :

<? $name = 'saturs no lauka vards'; $last_name = 'saturs no lauka uzvards'; ?>

Edited by Labrador
Link to comment
Share on other sites

×
×
  • Create New...