Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/txt] Problem z edycją pliku....
Forum PHP.pl > Forum > PHP
ADeM
Tak jak w temacie... Bardzo bym prosił o pomoc... Chcę zrobić sobie edycje newsów z poziomu przeglądarki żeby wyglądało to tak:
"tytul newsa" - kiedy dodany
"tytul newsa" - kiedy dodany
"tytul newsa" - kiedy dodany
"tytul newsa" - kiedy dodany

I to żeby były linki do strony gdzie były by formularze z edycją...

Może to coś pomoże...

Plik data.txt mam zrobiony tak:
Kod
Spoko|10.11.2004 19:50|byle co|ADeM
Spoko|10.11.2004 19:50|byle co|ADeM
Spoko|10.11.2004 19:50|byle co|ADeM
Spoko|10.11.2004 19:50|byle co|ADeM
...

Plik admin1.php który jest odpowiedzialny za wyświetlanie newsów wygląda tak:

  1. <?php
  2. $dane=file(&#092;"data.txt\"); 
  3. for($i=0;$i<count($dane);$i++) 
  4. { 
  5. $linia=explode(&#092;"|\",$dane[$i]); 
  6.  
  7. echo &#092;" 
  8.  
  9. <TABLE border=&#092;"0\" WIDTH=\"465\" height=\"30\" ALIGN=\"center\" VALIGN=\"top\" CELLSPACING=\"0\" CELLPADDING=\"1\"> 
  10. <TD background=&#092;"tytul.gif\" WIDTH=\"465\" height=\"30\" ALIGN=\"center\" VALIGN=\"top\"> 
  11. <div align=&#092;"left\"> <font color=\"white\"><b>&nbsp;&nbsp;$linia[0] - $linia[1]</td></tr> 
  12. <TABLE BORDER=&#092;"0\" WIDTH=\"465\" ALIGN=\"center\" CELLSPACING=\"0\" CELLPADDING=\"1\"> 
  13. <TD bgcolor=&#092;"black\" WIDTH=\"465\" ALIGN=\"center\" VALIGN=\"top\"> 
  14. <div align=&#092;"left\"><font color=\"#FFFFFF\">
  15. <p style=&#092;"margin: 10px\">
  16. $linia[2]
  17. </p>
  18. </div></b></font> 
  19. </td></tr> 
  20. <TABLE BORDER=&#092;"0\" height=\"30\" WIDTH=\"465\" ALIGN=\"center\" CELLSPACING=\"0\" CELLPADDING=\"1\"> 
  21. <TD background=&#092;"tytul.gif\" WIDTH=\"465\" height=\"30\" ALIGN=\"center\" VALIGN=\"top\"> 
  22. <font size=&#092;"3\" color=\"white\"><div align=\"right\"></b>dodał: <i><b>$linia[3]</b></i>
  23. </td></tr>
  24. </table></table></table>
  25. <br />
  26. &#092;"; 
  27. } 
  28. ?>


Plik admin2.php który jest odpowiedzialny za dodawanie newsów:
  1. <?php
  2. $date = date(&#092;"j.m.Y G:i\"); 
  3. $tytul=$_POST[&#092;"tytul\"]; 
  4. $autor=$_POST[&#092;"imie\"]; 
  5. $tresc=$_POST[&#092;"tresc\"]; 
  6.  
  7. $filename = &#092;"data.txt\"; 
  8. $nowy = &#092;"$tytul|$date|$tresc|$autor\"; 
  9.  
  10. $plik = file($filename); 
  11. $plik = implode(&#092;"\",$plik); 
  12. $plik = $nowy.&#092;"rn\".$plik; 
  13. $fp = fopen($filename , &#092;"w\");flock($fp,2); 
  14. fputs( $fp , $plik); 
  15. flock($fp,3);fclose($fp); 
  16. ?>


Oraz plik admin3.php w którym znajduje się formularz do dodawania newsów:
Kod
<form method="post" action="admin2.php">
<center>
Dodał: <input type="text" name="imie" size=20> <br>
Tytuł:<br><input type="text" name="tytul" size=20><br>
Tresc:<br><textarea name="tresc" rows=9 cols=38></textarea></p>
<input type="submit" value="Dodaj">
</form>


Jak zrobić do tego edycje czyli żeby automatycznie po dodaniu newsa tworzył się linki i liste newsów w które po kliknięciu ma się przenieść na strone z formularzem do edycj... Proszę o pomoc z góry dziękuję

---
Ty prosisz o pomoc o pomoc ja prosze o umieszczenie kodu php w [php] winksmiley.jpg
hwao
ActivePlayer
zaczynasz tak jak w admin1.php
  1. <?php
  2. $dane=file(&#092;"data.txt\"); 
  3. for($i=0;$i<count($dane);$i++) 
  4. { 
  5. $linia=explode(&#092;"|\",$dane[$i]); 
  6.  
  7. ?>

teraz czas wyswietlic po kolei kazdy rekord
  1. <?php
  2.  
  3. echo $linia[0];//tutaj zmien sobie tak jaka chcesz miec forme z tego co pisales jak chcesz to pow
  4. nno byc $linia[0].' - '.$linia[1];
  5.  
  6. //wyswietlenie linka do panelu edycji
  7. echo '<a href=\"costam.php?id='.$i.'\">edytuj</a><br>';
  8.  
  9. ?>

zamykasz petle
  1. <?php
  2.  
  3. }
  4. ?>


w pliku costam.php zaczynasz podobnie.

  1. <?php
  2. $dane=file(&#092;"data.txt\"); 
  3.  
  4. ?>

i teraz serce zabawki tongue.gif
  1. <?php
  2.  
  3. $linia=$dane[$_GET['id']];
  4. //FORMULARZ EDYCJI tego co jest w $linia
  5.  
  6. ?>


I teraz... musisz sie sam troche potrudzic smile.gif
z formularza musisz wyslac nowe wartosci tego co jest w zmiennej $linia oraz wartosc zmiennej $i;

i kolejnym pliku robisz tak:
1. odczytujesz wszystko po kolei z pliku. czyli
  1. <?php
  2. $dane=file(&#092;"data.txt\"); 
  3.  
  4. ?>

2. $dane[$i] = $linia[$i]; // w $linia i w $i masz zapisane to z formularza poprzedniego pliku.
3. zapisujesz $dane do pliku.
sf
nie używaj echo do wyświetlania statycznego html, lepiej poprostu wyjść z php i to wyświetlić... tak jest szybciej i estetyczniej, a jak masz mały kod html do wyświetlenia to lepiej rozważyć użycie pojedynczych apostrofów bo 1) jest to szybsze 2) nie trzeba wstawiać przed " znaku \
ADeM
Dzieki ale nie kapuje tego:
Kod
I teraz... musisz sie sam troche potrudzic
z formularza musisz wyslac nowe wartosci tego co jest w zmiennej $linia oraz wartosc zmiennej $i;
ActivePlayer
piszesz formularz w miejscu gdzie CI tam napisalem i z niego wysylasz wartosci do kolejnego plik, który powoduje nadpisanie poprzednich wartosci w pliku...


sproboj zawsze przed napisaniem jakiegos skryptu napisac sobie algorytm postepowania... co po kolei musisz zrobic... logidznie myslac... ze najpierw pobrac stare dane... potem costam z nimi zrobic itd... i potem piszac skrypt patrzysz na ta kartke i wiesz co dokladnie masz teraz napisac...
ADeM
sad.gifsad.gifsad.gifsad.gifsad.gif nie wiem jak to zrobic sad.gifsad.gifsad.gifsad.gifsad.gif
ActivePlayer
za mala wiedza, za duze wymagania... i ak Ci juz 90% skryptu napisalem...
ADeM
taa.... pogubiłem się w tym...
ActivePlayer
poczytaj pare kursow dla poczatkujacych napewno za jakis czas bedzie to dla Ciebie pestka tongue.gif powodzenia...
ADeM
czytalem i dalej czytam rozne kursy od hohohohohoh... nie mogem tego php zrozumiec.... najlepiej bylo by siem nauczyc z przykladow.... moze macie jakis skrypt ktory ma duzo rzeczy z php w sobie?? jak macie to bardzo was prosze o podanie go tutaj (chce siem troche pouczyc [jezeli cos zrozumie])...
ActivePlayer
Zeby napisac to co chcesz poczytaj o istrukcjach warunkowych, pętlach, tablicach i operacjach na plikach... aha a jak nie wiedzialbys jak cos zrobic to szukasz funkcji w manualu... jak przez godzinke nic nie znajdziesz to idziesz na nastepna godzinke na google smile.gif a jak na google tez nic nie bedzie to piszesz na forum smile.gif
tiraeth
Mam nadzieję, że nikt nie uzna tego za spam ale masz poniżej link:

>LINK TUTAJ<

Jest to przykład Cudi'ego w edytowaniu danych w pliku tekstowym.... mam nadzieję, że Ci to pomoże smile.gif

pozdro!
ADeM
A znacie jeszcze jakieś fajne skrypty i tutoriale??
Junior
ActivePlayer powiedział ci już, google, google, google.
Jak nic nie znajdziesz [w co wątpie] -> php.pl ;]
pozdro sześćset [ :
ADeM
Ok... rolleyes.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.