Toon posts:

M'n html files editten via m'n browser

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil graag bepaalde delen van mijn sites updaten vanuit mijn browser. Zodat ik overal mijn pagina's kan updaten.

Waar kan ik daar meer over vinden?

Mijn pagina opbouw ziet er zo uit:

http://www.mijndomein.nl/ <= de pagina voor de bezoekers
http://www.mijndomein.nl/mystuff/ <= dir waar al het content staat in een txt die je op de bezoekers pagina ziet dmv een include

Nu wil ik dus de txt file die ik daar heb staan kunnen editten vanuit: http://www.mijndomein.nl/mystuff/edit.html

Hoe moet ik dit doen?
- De txt file chmodden met 666?
- Een wachtwoord op die dir zetten anders kan iedereen m'n txt editten
- Een edit html file maken met een textarea die de txt file laad en weer kan opslaan?

Of kan dat zo niet en moet ik er een script voor schrijven die het dan opslaat?

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 07:52
Ja, php scriptje :)

Verwijderd

Topicstarter
Op zaterdag 29 september 2001 13:56 schreef dennisdotcom het volgende:
Ja, php scriptje :)
Heeft zoiets ook een naam? Zodat ik het ergens kan opzoeken?

  • razor-x
  • Registratie: Februari 2001
  • Laatst online: 05-06 07:37
1) Je moet eens beginnen te kijken hoe je een file open maakt (voor jou een .html)

2) Hoe gooi je dit in een textbox ?

3) Hoe schrijf je het weer terug in die file

:)

Verwijderd

/me in een goede bui:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
if(!$action) {
     $fp = fopen($edit_file, "r");
     while(!feof($fp)) {
           $contents = fread($fp, 4096);
     }
     fclose($fp);

     echo "<form action=$php_self?action=update method=post>
           <input type=hidden name=edit_file value=$edit_file>
           <textarea name=contents>$contents</textarea>
           <input type=submit></form>";
}
else
{
     $fp = fopen($edit_file, "a+";
     fwrite($contents, $fp);
     fclose($fp);
}
?>

Zoiets. Spreek dit script (niet getest overigens) aan met
scriptnaam.php?edit_file=index.html
ofzoiets (als je de index.html file wilt updaten dus) en dan krijg je een textarea met daarin de complete content van je html file.
Daarin ga je zitten prutsen en dan klik je op verzenden.
Dan wordt de index.html overschreven door de veranderde versie.
Success er mee.

  • razor-x
  • Registratie: Februari 2001
  • Laatst online: 05-06 07:37
Op zaterdag 29 september 2001 14:04 schreef daniel_hoenderdos het volgende:
* razor-x in een goede bui:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
if(!$action) {
     $fp = fopen($edit_file, "r");
     while(!feof($fp)) {
           $contents = fread($fp, 4096);
     }
     fclose($fp);

     echo "<form action=$php_self?action=update method=post>
           <input type=hidden name=edit_file value=$edit_file>
           <textarea name=contents>$contents</textarea>
           <input type=submit></form>";
}
else
{
     $fp = fopen($edit_file, "a+";
     fwrite($contents, $fp);
     fclose($fp);
}
?>

Zoiets. Spreek dit script (niet getest overigens) aan met
scriptnaam.php?edit_file=index.html
ofzoiets (als je de index.html file wilt updaten dus) en dan krijg je een textarea met daarin de complete content van je html file.
Daarin ga je zitten prutsen en dan klik je op verzenden.
Dan wordt de index.html overschreven door de veranderde versie.
Success er mee.
je bent weer te aardig :)

Verwijderd

En ik verveel me.
Maar goed, dat scriptje is dus niet getest, dus mochten er kleine complicaties zijn, pleurt hier maar neer.

Verwijderd

Op zaterdag 29 september 2001 14:04 schreef daniel_hoenderdos het volgende:
/me in een goede bui:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
if(!$action) {
     $fp = fopen($edit_file, "r");
     while(!feof($fp)) {
           $contents = fread($fp, 4096);
     }
     fclose($fp);

     echo "<form action=$php_self?action=update method=post>
           <input type=hidden name=edit_file value=$edit_file>
           <textarea name=contents>$contents</textarea>
           <input type=submit></form>";
}
else
{
     $fp = fopen($edit_file, "a+";
     fwrite($contents, $fp);
     fclose($fp);
}
?>

Zoiets. Spreek dit script (niet getest overigens) aan met
scriptnaam.php?edit_file=index.html
ofzoiets (als je de index.html file wilt updaten dus) en dan krijg je een textarea met daarin de complete content van je html file.
Daarin ga je zitten prutsen en dan klik je op verzenden.
Dan wordt de index.html overschreven door de veranderde versie.
Success er mee.
Eerste foutje reeds gesignaleerd:
PHP:
1
2
3
4
5
6
7
8
<?
else
{
     $fp = fopen($edit_file, "a+";
     fwrite($contents, $fp);
     fclose($fp);
}
?>

moet zijn
PHP:
1
2
3
4
5
6
7
8
<?
else
{
     $fp = fopen($edit_file, "w";
     fwrite($contents, $fp);
     fclose($fp);
}
?>

anders schrijftie um weg na de laatste \n in je html, en je wilt hem er overheen hebben.

Dus:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
if(!$action) {
     $fp = fopen($edit_file, "r");
     while(!feof($fp)) {
           $contents = fread($fp, 4096);
     }
     fclose($fp);

     echo "<form action=$php_self?action=update method=post>
           <input type=hidden name=edit_file value=$edit_file>
           <textarea name=contents>$contents</textarea>
           <input type=submit></form>";
}
else
{
     $fp = fopen($edit_file, "w";
     fwrite($contents, $fp);
     fclose($fp);
}
?>

voor de volledigheid.
Verder kloptie wel denk ik.

Verwijderd

Topicstarter
Op zaterdag 29 september 2001 14:13 schreef daniel_hoenderdos het volgende:

[..]

Eerste foutje reeds gesignaleerd:
PHP:
1
2
3
4
5
6
7
8
<?
else
{
     $fp = fopen($edit_file, "a+";
     fwrite($contents, $fp);
     fclose($fp);
}
?>

moet zijn
PHP:
1
2
3
4
5
6
7
8
<?
else
{
     $fp = fopen($edit_file, "w";
     fwrite($contents, $fp);
     fclose($fp);
}
?>

anders schrijftie um weg na de laatste \n in je html, en je wilt hem er overheen hebben.

Dus:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
if(!$action) {
     $fp = fopen($edit_file, "r");
     while(!feof($fp)) {
           $contents = fread($fp, 4096);
     }
     fclose($fp);

     echo "<form action=$php_self?action=update method=post>
           <input type=hidden name=edit_file value=$edit_file>
           <textarea name=contents>$contents</textarea>
           <input type=submit></form>";
}
else
{
     $fp = fopen($edit_file, "w";
     fwrite($contents, $fp);
     fclose($fp);
}
?>

voor de volledigheid.
Verder kloptie wel denk ik.
Parse error: parse error in /usr/home/blabla/public_html/mystuff/edit.php on line 16

Verwijderd

PHP:
1
2
3
<?
$fp = fopen($edit_file, "w";
?>

moet inderdaad
PHP:
1
2
3
<?
$fp = fopen($edit_file, "w");
?>

zijn.
In mijn haast een haakje sluiten vergeten

Verwijderd

Topicstarter
Op zaterdag 29 september 2001 14:49 schreef daniel_hoenderdos het volgende:
PHP:
1
2
3
<?
$fp = fopen($edit_file, "w";
?>

moet inderdaad
PHP:
1
2
3
<?
$fp = fopen($edit_file, "w");
?>

zijn.
In mijn haast een haakje sluiten vergeten
Hmmz, die had ik ook moeten zien. Sorry, maar bedankt!
Ik krijg nu idd de goede file in de textarea. Ik kan hem alleen nog niet 'saven' want ik krijg de volgende error:
Warning: Supplied argument is not a valid File-Handle resource in /usr/home/blabla/public_html/mystuff/edit.php on line 17

Verwijderd

In php:

<?if(!$action) { $fp = fopen($edit_file, "r"); while(!feof($fp)) { $contents = fread($fp, 4096); } fclose($fp); echo "<form action=$php_self?action=update method=post> <input type=hidden name=edit_file value=$edit_file> <textarea name=contents>$contents</textarea> <input type=submit></form>";}else{ $fp = fopen($edit_file, "a+"; fwrite($contents, $fp); fclose($fp);}?>
!!!!!!!!!!!!!!!!!!!!

>:) :) :( :'( :P :o :D :r :9~ :9 ;) :7 :+ O+ :* }:O |:( 8-) :? (8> :Y) :Z ;( B-) *D :z

Verwijderd

www.gymnasiumsite.f2s.com voor een aantal scripts, ook eentje om sites mee te editten! Zet dat ff achter een .htaccess paswoordscherm en tadaaa.....

  • Wacky
  • Registratie: Januari 2000
  • Laatst online: 30-08 10:27

Wacky

Dr. Lektroluv \o/

Op zaterdag 29 september 2001 16:03 schreef TheManOfTheWorld het volgende:
In php:

<?if(!$action) { $fp = fopen($edit_file, "r"); while(!feof($fp)) { $contents = fread($fp, 4096); } fclose($fp); echo "<form action=$php_self?action=update method=post> <input type=hidden name=edit_file value=$edit_file> <textarea name=contents>$contents</textarea> <input type=submit></form>";}else{ $fp = fopen($edit_file, "a+"; fwrite($contents, $fp); fclose($fp);}?>
!!!!!!!!!!!!!!!!!!!!

>:) :) :( :'( :P :o :D :r :9~ :9 ;) :7 :+ O+ :* }:O |:( 8-) :? (8> :Y) :Z ;( B-) *D :z
Newbie :P

Verwijderd

Topicstarter
---
OK, ik heb nu het script van daniel_hoenderdos en GSMboy gecombineerd tot:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?
if($todo == "save") 
{
$hetbestand = fopen("/usr/home/blabla/public_html/mystuff/executable.php", "w+");
fputs($hetbestand,$Tekst);
fclose($hetbestand);
}


$edit_file = "/usr/home/blabla/public_html/mystuff/executable.php";

     $fp = fopen($edit_file, "r");
     while(!feof($fp)) {
           $contents = fread($fp, 99999);
     }
     fclose($fp);



echo    "<FORM METHOD=Post ACTION=edit.php?todo=save>
    <textarea cols=120 rows=30 name=Tekst>$contents</textarea>
    <br><center><input type=submit value=Update> </center></form>";
?>

En ik kan nu zowel php bestanden als txt bestanden openen.

Alleen als ik mijn php bestand save wordt ie anders...
Als het voor het saven een regel zo was:
code:
1
$Start = "<table border=2>";

is het erna
code:
1
$Start = \"<table border=2>\";

als ik het dan nog een keer save is het:
code:
1
$Start = \\\"<table border=2>\\\";

Hoe kan dat? En hoe kan ik dat voorkomen?

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 14-09 17:42

Gerco

Professional Newbie

stripslashes();

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


Verwijderd

Topicstarter
Op zaterdag 29 september 2001 21:49 schreef Gerco het volgende:
stripslashes();
Waar moet ik dat dan plaatsen?

En het is natuurlijk niet de bedoeling dat mijn slashes die er al in stonden worden gestript. Gaat dat zo goed?

Verwijderd

Bekijk de functie stripslashes anders even door in de manual.

Verwijderd

Topicstarter
Op zondag 30 september 2001 12:27 schreef daniel_hoenderdos het volgende:
Bekijk de functie stripslashes anders even door in de manual.
Ik kan dus magic_quotes_gpc uitzetten? En dan heb ik die slashes ook niet meer?

Hoe zet ik hem uit?
Op m'n server in PHP de magic_quotes_gpc uitzetten?
In het edit.php script de magic_quotes_gpc uitzetten?
Of dmv een .htaccess?

Verwijderd

Waarom gebruik je niet gewoon mySQL icm phpMyAdmin????

Is supersimpel én veilig.

Verwijderd

Ow, sorry.

Was hier gekomen door search en het was me niet opgevallen dat het topic al 3 weken oud is...

Nouja, hopelijk heb je hier toch wat aan...
Pagina: 1