Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][PHP] Edycja pliku
cypeczek
post 24.12.2010, 11:04:51
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 9.07.2010

Ostrzeżenie: (0%)
-----


Witajcie panowie,
rozpocząłem przygodę z PHP i buduje własny mini CMS. Mam jedno pytanie, jak ma wyglądać funkcja, która wywołuje plik css do okna, pozwala na jego edycję apotem na zapis w tym samym katalogu? Jeżeli ktoś miałby chwilę to prosiłbym o jakiś przykład, jak nie t chocaż nazwy funkcji i instrukcję jak to po kolei ogarnąć. Z góry dzięki.
Go to the top of the page
+Quote Post
IceManSpy
post 24.12.2010, 11:16:59
Post #2





Grupa: Zarejestrowani
Postów: 1 006
Pomógł: 111
Dołączył: 23.07.2010
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Możesz wykorzystać http://ckeditor.com , choć nie będzie kolorować składni. Wczytujesz do jakiejś zmiennej plik css, a potem wyświetlasz do w edytorze. Edytujesz, a następnie klikasz zapisz, zapisze Ci wynik do zmiennej, a potem zrób z tym co potrzebujesz.


--------------------
Go to the top of the page
+Quote Post
ShadowD
post 24.12.2010, 11:17:04
Post #3





Grupa: Zarejestrowani
Postów: 1 333
Pomógł: 137
Dołączył: 25.03.2008
Skąd: jesteś??

Ostrzeżenie: (0%)
-----


edycja plików php -> google, fopen itd.


--------------------
Mój blog - o wszystkim i niczym ale zazwyczaj związane z informatyką! ;-)
Githube

Usługi spawalnicze i monterskie | Park linowy Lublin i Okunince
Go to the top of the page
+Quote Post
cypeczek
post 25.12.2010, 16:37:56
Post #4





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 9.07.2010

Ostrzeżenie: (0%)
-----


Dziękuje Panowie, naprowadziliście mnie na rozwiązanie. Napisałem taki kod:

  1. <?
  2. ?>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml">
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7. <title>Panel Administratora</title>
  8. <link href="style/css/transdmin.css" rel="stylesheet" type="text/css" media="screen" />
  9. <!--[if IE 6]><link rel="stylesheet" type="text/css" media="screen" href="style/css/ie6.css" /><![endif]-->
  10. <!--[if IE 7]><link rel="stylesheet" type="text/css" media="screen" href="style/css/ie7.css" /><![endif]-->
  11. <script type="text/javascript" src="style/js/jquery.js"></script>
  12. <script type="text/javascript" src="style/js/jNice.js"></script>
  13. </head>
  14. <body>
  15. <div id="wrapper">
  16. <h1><a href="./index.php"><span>Panel Administracyjny</span></a></h1>
  17. <ul id="mainNav">
  18. <li><a href="./index.php" class="active">Główna</a></li>
  19. <li><a href="./modules/main_info.php">Newsy</a></li>
  20. <li><a href="./wykop.php">Wykop</a></li>
  21. <li><a href="./styl.php">Styl</a></li>
  22. <li class="logout"><a href="./wylog.php">Wyloguj</a></li>
  23. </ul>
  24. <div id="containerHolder">
  25. <div id="container">
  26. <?if(!empty($_SESSION['uzyt'])){?>
  27. <table cellpadding="0" cellspacing="0" width="342" height="228">
  28. <tr>
  29. <td height="228" valign="top">
  30. <?
  31. $plik = '../styl/glowny.css';
  32. $uchwyt = fopen($plik, 'r');
  33. $tresc = fread($uchwyt, filesize($plik));
  34. fclose($uchwyt);
  35. $uchwyt = fopen($plik, 'r');
  36. fclose($uchwyt);
  37. ?>
  38. <?
  39. if ( !$_POST['wyslij'] ) {?>
  40. <FORM ACTION="styl.php?wyslij" METHOD="POST">
  41. <p align="center">
  42. <TEXTAREA NAME=edycja rows="30" cols="78"> <? echo $tresc ?> </TEXTAREA><br>
  43. <INPUT TYPE="submit" VALUE="Zapisz" name=wyslij>
  44. </p>
  45. </FORM>
  46. <?
  47. } else
  48. {
  49. $plik = '../styl/glowny.css';
  50. $uchwyt = fopen($plik, 'w');
  51. fwrite($uchwyt, $_POST['edycja']);
  52. fclose($uchwyt);
  53. }
  54. echo"<br><br><a href=\"styl.php\">Powrót do edycji</a>";
  55. ?></td>
  56. </tr>
  57. </table>
  58. </center>
  59. <?}else{ echo '<p>Brak autoryzacji.</p>'; echo '<p>Dostęp zabroniony.</p>'; echo '<br><a href="loguj.php">Zaloguj</a>'; }?>
  60. </div>
  61. </div>
  62. </div>
  63. </body>
  64. </html>


Już zawiera stylowanie moje, ale to nie ważne. Działa bez zarzutów tylko powiedzcie mi czy są tu jakieś błędy czy luki bezpieczeństwa?

I jeszcze jedno pytanie, czy pli php mogę edytować w ten sam sposób?

Panowie nowe pytanie, jeśli na jedne stronie chcę wrzucić kilka taki textera to co mam zmienić żeby mi się nie pogryzły i żeby dobre pliki zapisywały?

Czy ktoś miałby chwilę aby pomóc pisząc odpowiedź?

Ten post edytował cypeczek 24.12.2010, 11:39:41
Go to the top of the page
+Quote Post
IceManSpy
post 25.12.2010, 18:36:44
Post #5





Grupa: Zarejestrowani
Postów: 1 006
Pomógł: 111
Dołączył: 23.07.2010
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Możesz każdy plik edytować, nawet php. Problem będzie w tym jak zapomnisz jakiegoś znaczka i będzie syntax error.
Aby użyć kilka textarea wystarczy że inny będą miały name np jak w Twoim kodzie jest: <TEXTAREA NAME=edycja rows="30" cols="78"> to możesz dać:
<TEXTAREA NAME=edycja rows="30" cols="78">
<TEXTAREA NAME=podsumowanie rows="30" cols="78">

Ważne jest, aby na serwerze właściwym pliki, które będziesz edytować miały odpowiednie atrybuty do edycji.

Ten post edytował IceManSpy 25.12.2010, 18:37:26


--------------------
Go to the top of the page
+Quote Post
cypeczek
post 25.12.2010, 20:12:43
Post #6





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 9.07.2010

Ostrzeżenie: (0%)
-----


A tutaj muszę zmienić wszystkim nazwy zmiennych?

  1. $plik = '../styl/glowny.css';
  2. $uchwyt = fopen($plik, 'r');
  3. $tresc = fread($uchwyt, filesize($plik));
  4. fclose($uchwyt);
  5. $uchwyt = fopen($plik, 'r');
  6. fclose($uchwyt);


I jeszcze powiedzcie mi jak to jest bo mam pliki z uprawnieniami na serwerze 755 i mi zapisuje ładnie, tak ma być?
Go to the top of the page
+Quote Post
IceManSpy
post 25.12.2010, 23:39:08
Post #7





Grupa: Zarejestrowani
Postów: 1 006
Pomógł: 111
Dołączył: 23.07.2010
Skąd: Kraków

Ostrzeżenie: (0%)
-----


W tym nic nie musisz zmieniać, bo przecież odczytujesz tylko wszystko z pliku do zmiennej treść. I po co robisz 5 i 6 linijkę w/w kodzie? Otwierasz a potem od razu zamykasz, bez sensu smile.gif

Co do uprawnień, to nie powiem Ci dokładnie, ale chyba powinno być 777, ale lepiej niech ktoś to potwierdzi lub zaprzeczy smile.gif


--------------------
Go to the top of the page
+Quote Post
cypeczek
post 26.12.2010, 12:22:59
Post #8





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 9.07.2010

Ostrzeżenie: (0%)
-----


Czyli jak chcę edytować na jednej stronie powiedzmy 3 pliki to tak powinien wyglądać ten kod poprawie?

  1. <table cellpadding="0" cellspacing="0" width="342" height="228">
  2. <tr>
  3. <td height="228" valign="top">
  4. <?
  5. $plik = '../styl/glowny.css';
  6. $uchwyt = fopen($plik, 'r');
  7. $tresc = fread($uchwyt, filesize($plik));
  8. fclose($uchwyt);
  9. ?>
  10. <?
  11. if ( !$_POST['wyslij'] ) {?>
  12. <FORM ACTION="styl.php?wyslij" METHOD="POST">
  13. <p align="center">
  14. <TEXTAREA NAME=edycja rows="30" cols="78"> <? echo $tresc ?> </TEXTAREA><br>
  15. <INPUT TYPE="submit" VALUE="Zapisz" name=wyslij>
  16. </p>
  17. </FORM>
  18. <?
  19. } else
  20. {
  21. $plik = '../styl/glowny.css';
  22. $uchwyt = fopen($plik, 'w');
  23. fwrite($uchwyt, $_POST['edycja']);
  24. fclose($uchwyt);
  25. }
  26. echo"<br><br><a href=\"styl.php\">Powrót do edycji</a>";
  27. ?></td>
  28. </tr>
  29. </table>
  30.  
  31. <table cellpadding="0" cellspacing="0" width="342" height="228">
  32. <tr>
  33. <td height="228" valign="top">
  34. <?
  35. $plik2 = '../styl/html.css';
  36. $uchwyt2 = fopen($plik2, 'r');
  37. $tresc2 = fread($uchwyt, filesize($plik2));
  38. fclose($uchwyt2);
  39. ?>
  40. <?
  41. if ( !$_POST['wyslij2'] ) {?>
  42. <FORM ACTION="styl.php?wyslij" METHOD="POST">
  43. <p align="center">
  44. <TEXTAREA NAME=edycja2 rows="30" cols="78"> <? echo $tresc2 ?> </TEXTAREA><br>
  45. <INPUT TYPE="submit" VALUE="Zapisz" name=wyslij2>
  46. </p>
  47. </FORM>
  48. <?
  49. } else
  50. {
  51. $plik2 = '../styl/html.css';
  52. $uchwyt2 = fopen($plik2, 'w');
  53. fwrite($uchwyt2, $_POST['edycja2']);
  54. fclose($uchwyt2);
  55. }
  56. echo"<br><br><a href=\"styl.php\">Powrót do edycji</a>";
  57. ?></td>
  58. </tr>
  59. </table>
  60.  
  61. <table cellpadding="0" cellspacing="0" width="342" height="228">
  62. <tr>
  63. <td height="228" valign="top">
  64. <?
  65. $plik3 = '../styl/top.css';
  66. $uchwyt3 = fopen($plik3, 'r');
  67. $tresc3 = fread($uchwyt3, filesize($plik3));
  68. fclose($uchwyt3);
  69. ?>
  70. <?
  71. if ( !$_POST['wyslij3'] ) {?>
  72. <FORM ACTION="styl.php?wyslij3" METHOD="POST">
  73. <p align="center">
  74. <TEXTAREA NAME=edycja3 rows="30" cols="78"> <? echo $tresc3 ?> </TEXTAREA><br>
  75. <INPUT TYPE="submit" VALUE="Zapisz" name=wyslij3>
  76. </p>
  77. </FORM>
  78. <?
  79. } else
  80. {
  81. $plik3 = '../styl/top.css';
  82. $uchwyt3 = fopen($plik3, 'w');
  83. fwrite($uchwyt3, $_POST['edycja3']);
  84. fclose($uchwyt3);
  85. }
  86. echo"<br><br><a href=\"styl.php\">Powrót do edycji</a>";
  87. ?></td>
  88. </tr>
  89. </table>
Go to the top of the page
+Quote Post
IceManSpy
post 26.12.2010, 21:49:06
Post #9





Grupa: Zarejestrowani
Postów: 1 006
Pomógł: 111
Dołączył: 23.07.2010
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Tylko w tym kodzie, jak wy edytujesz 1 textarea i drugi, a potem klikniesz w 1 zapisz, t Ci tylko 1 zapisze. Musisz wszystko dać w jednym formie.


--------------------
Go to the top of the page
+Quote Post
cypeczek
post 26.12.2010, 22:15:06
Post #10





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 9.07.2010

Ostrzeżenie: (0%)
-----


Coś takiego?

  1. <table cellpadding="0" cellspacing="0" width="342" height="228">
  2. <tr>
  3. <td height="228" valign="top">
  4. <?
  5. $plik = '../styl/glowny.css';
  6. $uchwyt = fopen($plik, 'r');
  7. $tresc = fread($uchwyt, filesize($plik));
  8. fclose($uchwyt);
  9. $plik2 = '../styl/html.css';
  10. $uchwyt2 = fopen($plik2, 'r');
  11. $tresc2 = fread($uchwyt, filesize($plik2));
  12. fclose($uchwyt2);
  13. $plik3 = '../styl/top.css';
  14. $uchwyt3 = fopen($plik3, 'r');
  15. $tresc3 = fread($uchwyt3, filesize($plik3));
  16. fclose($uchwyt3);
  17. ?>
  18. <?
  19. if ( !$_POST['wyslij'] ) {?>
  20. <FORM ACTION="styl.php?wyslij" METHOD="POST">
  21. <p align="center">
  22. <TEXTAREA NAME=edycja rows="30" cols="78"> <? echo $tresc ?> </TEXTAREA><br>
  23. <TEXTAREA NAME=edycja rows="30" cols="78"> <? echo $tresc2 ?> </TEXTAREA><br>
  24. <TEXTAREA NAME=edycja rows="30" cols="78"> <? echo $tresc3 ?> </TEXTAREA><br>
  25. <INPUT TYPE="submit" VALUE="Zapisz" name=wyslij>
  26. </p>
  27. </FORM></td>
  28. </tr>
  29. </table>
Go to the top of the page
+Quote Post
IceManSpy
post 27.12.2010, 11:41:28
Post #11





Grupa: Zarejestrowani
Postów: 1 006
Pomógł: 111
Dołączył: 23.07.2010
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Coś w ten deseń, tylko po wysłaniu zobacz sobie co się mieści w zmiennej $_POST['edycja'] (w tym jest mały błąd, ale może sam do tego dojdziesz, ja to już napisałem smile.gif )snitch.gif

Ten post edytował IceManSpy 27.12.2010, 11:42:08


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 12:18