textarea opslaan als file in dir.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mathieu Posthumus

Mathieu Posthumus

22/05/2014 13:39:25
Quote Anchor link
Hey mensen.

Ik moet de files die ik open in mijn filebrowser ook kunnen edite, nu heb ik gebruik gemaakt van de
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
file_get_contents & file_put_contents
gebruikt.

Het stukje wat ik heb is.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
        if (isset($_GET['file']) && isset($_POST['content'])) {
            $current = file_get_contents($_GET['url'].$_GET['file']);
            $current .= $_POST['file'];
            file_put_contents($_POST['content'], $_GET['file']);
        }

        ?>


en dan de formulier.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<form action="index.php" method="POST">
            <div class="safeFile">
                <input type="submit" class="safeFile" value="Opslaan">
            </div>
            <div class="filePreview">
                <?php
                if (isset($_GET['file'])) {
                    $fileName = $_GET['file'];

                    $fileExt = pathinfo($fileName, PATHINFO_EXTENSION);

                    if ($fileExt == in_array($fileExt, $fileExtensie)) {
                        $fileInhoud = file_get_contents($newPathName . $fileName);
                        echo '<textarea name="content" class="filePreviewInhoud">';
                        echo htmlentities($fileInhoud);
                        echo '</textarea>';
                    }
else if ($fileExt == in_array($fileExt, $pictureExtensie)) {
                        echo '<img class="picturePreviewInhoud" src="' . $newPathName . $fileName . '">';
                    }
                }

                ?>

            </div>
        </form>


Nou weet ik dus echt niet wat er fout is.
Hopelijk kunnen jullie me helpen.
 
PHP hulp

PHP hulp

05/11/2024 07:53:51
 
Michael -

Michael -

22/05/2014 13:43:32
Quote Anchor link
Je haalt GET en POST door elkaar. Welke wil je nou gebruiken?

GET file of POST file...

.= voegt iets toe aan een variabele. Wat je doet in content ophalen en in $current onthouden en vervolgens gewoon een post file eraan vast plakken??

Denk er nog eens rustig over na.
 
Mathieu Posthumus

Mathieu Posthumus

22/05/2014 13:47:50
Quote Anchor link
Ooh die $_POST['file'] klopt niet dat zag ik even niet. En heb het nu al een stuk anders gedaan. maar je zecht denk er nog even over na. Ik denk er al een paar dagen over. Heb je misschien een hint?
 
- Ariën  -
Beheerder

- Ariën -

22/05/2014 13:58:14
Quote Anchor link
Waar loop je op vast, en wat gaat er op dit moment fout?
 
Mathieu Posthumus

Mathieu Posthumus

22/05/2014 13:59:43
Quote Anchor link
Aar.

Er gebeurt gewoon niks hij gaat alleen naar index.php maar dan is ie niet opgeslagen.
En waar ik vastloop is. Waarom hij niet opslaat.

Ik heb even gekeken naar wat Michael zei. ik heb dit nu aangepast 'bij het opslaan'.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
        if (isset($_GET['file']) && isset($_POST['content'])) {
            $current = file_get_contents($_GET['url'].fopen($_GET['file'], 'r'));
            $current .= $_POST['content'];
            file_put_contents($_POST['content'], $current);
        }

        ?>
 
- Ariën  -
Beheerder

- Ariën -

22/05/2014 14:04:18
Quote Anchor link
en wat als je $current een echo'ed. Zie je dan de waarde die je verwacht?
 
Mathieu Posthumus

Mathieu Posthumus

22/05/2014 14:05:41
Quote Anchor link
Aar. Er staat volgens mij dan niks in $current want hij print niks uit. Maar waarom?
Gewijzigd op 22/05/2014 14:05:54 door Mathieu Posthumus
 
- Ariën  -
Beheerder

- Ariën -

22/05/2014 14:06:45
Quote Anchor link
Waarom die .fopen($_GET['file'], 'r') erachter?
 
Mathieu Posthumus

Mathieu Posthumus

22/05/2014 14:07:35
Quote Anchor link
- Aar - op 22/05/2014 14:06:45:
Waarom die .fopen($_GET['file'], 'r') erachter?


Dat was gewoon iets proberen. Was het vergeten weg te halen.
Gewijzigd op 22/05/2014 14:07:53 door Mathieu Posthumus
 
- Ariën  -
Beheerder

- Ariën -

22/05/2014 14:30:01
Quote Anchor link
Wat geeft dit aan?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
echo $_GET['url'].$_GET['file'];
 
Mathieu Posthumus

Mathieu Posthumus

22/05/2014 14:30:28
Quote Anchor link
Jongens het is gelukt. Wat het was. Heel makkelijk....

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
        if (isset($_GET['file']) && isset($_POST['content'])) {
            file_put_contents($_GET['url'].$_GET['file'], $_POST['content']);
        }

        ?>


en dan het Formulier.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
            <div class="safeFile">
                <input type="submit" class="safeFile" name="saveFile" value="Opslaan">
            </div>
            <div class="filePreview">
                <?php
                if (isset($_GET['file'])) {
                    $fileName = $_GET['file'];

                    $fileExt = pathinfo($fileName, PATHINFO_EXTENSION);

                    if ($fileExt == in_array($fileExt, $fileExtensie)) {
                        $fileInhoud = file_get_contents($newPathName . $fileName);
                        echo '<textarea name="content" class="filePreviewInhoud">';
                        echo htmlentities($fileInhoud);
                        echo '</textarea>';
                    }
else if ($fileExt == in_array($fileExt, $pictureExtensie)) {
                        echo '<img class="picturePreviewInhoud" src="' . $newPathName . $fileName . '">';
                    }
                }

                ?>

            </div>
        </form>
 
Michael -

Michael -

22/05/2014 14:36:59
Quote Anchor link
safeFile? Zo veilig is je script anders niet :-) Nou de beveiliging en controles nog inbouwen dus.
Probeer ook eens iets netter te programmeren. Dat zou je veel meer overzicht geven.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.