Zur Navigation

Schriftfarbe für 2 verschiedene User in Textarea ändern

1 Tombone

Hallo,
da ich nicht so konform mit PHP bin, würde ich die Forenuser gerne etwas fragen.

Szenario:
Es geht um eine Möglichkeit, daß mehrere User an einer serverseitigen Textdatei arbeiten können.

Ich habe diesen Code:

<?php
//Du musst nur hier die Dateien, die verändert werden sollen, einfügen
$files = array ('daten.txt');

//HTML
echo '<html>';
echo '<head><title>Dateieditor.php</title></head>';
echo '<body style="padding-left: 20px;">';

if(!isset ($_POST['abgeschickt'])) {
    echo '<form action="' . $_SERVER['PHP_SELF'] . '" method="post">';
    foreach ($files as $key => $val) {
        if (file_exists($val)) {
            echo '

<div style="width: 1000px; height; 1%; margin: auto 0px; text-align: center; padding: 10px 0px 10px 0px;"><br><b>Daten [' . $val . ']</b></div>
';
            echo '<textarea name="datei[' . $key . ']" style="width: 1000px; height: 800px; padding: 6px; background-color: #DEB887;">';
            echo file_get_contents($val);
            echo '</textarea></p>';
        }
    }
    echo '

<input type="submit" name="abgeschickt" value="Speichern" /></p>';
    echo '</form><br><br><br><br>';
} else {
    foreach ($_POST['datei'] as $key => $val) {
        if (isset($files[$key]) && file_exists($files[$key])) {
            if (file_put_contents($files[$key], $val)) {
                echo 'Datei ' . $files[$key] . ' wurde erfolgreich geschrieben !
';
            } else {
                echo 'Datei ' . $files[$key] . ' wurde nicht geschrieben !
';
            }

        }
   }
}

echo '</body>';
echo '</html>';

?>

Mit dem Speichern und dem Ändern in der daten.txt klappt das super. Ich hätte nur gerne, daß wenn 2 verschiedene Benutzer an dem Text arbeiten, beide beim Schreiben eine andere Textfarbe erhalten, um später unterscheiden zu können wer was geschrieben hat, wenn der Text sehr lange und unüberschaubar ist.
Ist das machbar, daß man für 2 User einen Button (z.B.mit den Vornamen) unter einer Textarea erstellt, der bei Klick des jeweiligen Users dessen Text, z.B. blau, den er schreiben möchte, so farblich ändert? Und wichtig...diese Textfarbe soll auch im Nachhinein so farblich in der daten.txt gespeichert werden und so auch beim Öffnen wieder erscheinen?

Vielen Dank im Voraus!

Grüße
Tom

02.02.2013 18:37 | geändert: 02.02.2013 18:39

2 Jörg Kruse

Machbar schon, aber keineswegs unaufwendig. PHP alleine würde hier auch gar nicht reichen, dazu bräuchte es noch einiges an JavaScript.

Ich würde da nach fertigen Lösungen suchen, Stichwort Collaborative editor.

Wenn es darum geht, festzustellen, wer was wann geschrieben hat, wäre eine Wiki-Software vielleicht schon eine Möglichkeit?

02.02.2013 21:28 | geändert: 02.02.2013 21:29

3 Tombone

Zitat von Jörg
Machbar schon, aber keineswegs unaufwendig. PHP alleine würde hier auch gar nicht reichen, dazu bräuchte es noch einiges an JavaScript.

Ich würde da nach fertigen Lösungen suchen, Stichwort Collaborative editor.

Wenn es darum geht, festzustellen, wer was wann geschrieben hat, wäre eine Wiki-Software vielleicht schon eine Möglichkeit?

Hallo Jörg,
danke für die Antwort.

Ich habe auch schon alles im Web durchsucht aber nur diese Online-Lösungen gefunden. Aber ich möchte auch vertrauliche Dokumente zusammen bearbeiten und somit sind diese Online-Editoren für mich nicht so sehr geeignet. Und diese Wikis sind mir zu unübersichtlich und auch nicht gerade einfach auf dem eigenen (möchte unbedingt meinen eigenen Webspace benutzen) Webspace zu installieren.

Hättest du oder jemand anderes keine schnelle Javascript-Lösung parat?

Grüße
Tom

03.02.2013 17:59

4 Jörg Kruse

JavaScript alleien tut es auch nicht. Man braucht beides: PHP, um die Dateien zu ändern, und JavaScript, um das Textarea einzufärben. Eine "schnelle" Lösung sehe ich nicht, zumindest nicht, wenn man so etwas von Grund auf programmieren möchte. Die Installation eines Wikis erscheint mir da wesentlich einfacher.

Aber vielleicht kennt ja noch jemand ein Script oder eine Klasse, worauf man aufbauen könnte.

03.02.2013 20:59 | geändert: 03.02.2013 21:03

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]