• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Frage Lesen und schreiben zu einen Textdatei

Andreas Krale

Neues Mitglied
Eine schönes hallo zusammen,

Ich suche einen HTML Script um aus einen Text Datei zum Beispiel von der dritte Zeile die 8, 9 und 10 Position aus zu lesen und die in einen Textfeld zu schreiben.
In diesen Textfeld muss ich dann auch die werte vielleicht ändern und dann wieder speichern in die Textdatei.

Ich hoffe dass es verständlich ist, habe die Schwierigkeit dass was ich im Kopf habe nicht immer richtig auf Papier bekomme.

Schon mal ein danke fürs lesen meine frage.
 
Werbung:
Und wo willst den Text speichern? JavaScript kann nicht auf die Festplatte zugreifen und wenn es auf dem Server sein soll, brauchst dort PHP oder ähnliches. Manche Browser erlauben bei gewissen Einstellungen das Kopieren in die Zwischenablage. Oder liegt dein Problem darin, den Text aus einer <textarea> zu parsen und die Zeilen 8-10 zu finden. Das geht vermutlich am einfachsten mit der String.split Funktion mit Trennzeichen \n.
 
JavaScript kann nicht auf die Festplatte zugreifen
Das traf lange Zeit zu, doch inzwischen ist es durch die File-API möglich:
https://developer.mozilla.org/en-US/docs/Web/API/File
The File interface provides information about files and allows JavaScript in a web page to access their content.
Selber habe ich damit noch nicht gearbeitet und daher möchte ich an dieser Stelle nicht einsteigen. Das Wissen, wie es gemacht wird, kann man sich leicht ergoogeln.
PS: Ich frage mich, ob der TO wirklich eine Datei auf dem lokalen Computer meint.
Hallo Andreas, kannst Du mal erklären, was das für eine Datei ist und was Du damit vor hast? Eine Datei auf dem eigenen Computer ist nicht für alle Besucher der Seite verfügbar.
 
Zuletzt bearbeitet von einem Moderator:
Werbung:
Hallo NetAktiv und Sempervivum,

Ich brauche diesen Script für einen Webseite die auf einen SD-karte ist installiert und diesen ist gekoppelt an einen Arduino Mega2560 Mikrocontroller.
Die Textdatei ist einen config.txt dort stehen die Startwerte von mein Projekt und die werte müssen ab und an geändert werden und kann dann nach einen Reset arbeite mit die neue Einstellungen.

In die config.txt steht zu beispiel

int timer1 = 10 // Standartwert ist 10 sec.
int timer2 = 60 // Standartwert ist 60 sec.


Jetzt muss ich die wert von timer1 in 15 ändern und dass muss ich über die Webseite tun (erst die alte wert 10 auslesen ändern in 15 und dann wieder auf die gleiche stelle Speichern).
 
für einen Webseite die auf einen SD-karte ist installiert
Mal ganz was anderes ;-) Was heißt, die ist auf der SD-Karte installiert? Läuft da ein Webserver auf dem Controller mit der SD-Karte als Speicher und man kann von außerhalb mit einem Browser drauf zugreifen?
 
Werbung:
Ahso, dann ist es IMO mehr eine Sache, die man mit PHP lösen kann: Die Datei liegt auf der SD-Karte und man kann auf dem Webserver von einer PHP-Seite darauf zugreifen. Und Du willst ein Web-Interface, damit man die Konfiguration benutzerfreundlich ändern kann. Dann ist die Frage, ob dieser Webserver PHP unterstützt. Wenn ja, legt man ein Formular an, das beim Aufruf mit den Daten aus der Datei gefüllt wird. Der Benutzer kann diese ändern und beim Submit werden sie wieder an den Server geschickt. Dort werden sie in die Datei eingetragen.
 
Werbung:
Da du sicher spezielle Anforderungen hast, was das Format deiner Daten angeht, musst das sicher selbst basteln. Aber es gibt massig Beispiele zu PHP Formular Inhalt verarbeiten und PHP Datei Lesen/Schreiben. Da musst ein paar Beispiele studieren und vereinigen.
 
Habe ein klein bissen Erfahrung mit PHP und mit Formularen nur in MS WORD oder EXCEL.
Aber wenn ich ein paar Beispiele habe dann bekomme ich dass denk ich hin :rolleyes:
 
Werbung:
Die Beispiele bekommst bei einer Suchmaschine nach Eingabe von PHP Formular verarbeiten. Das einfachste PHP Script zeigt dir nur die Formulardaten an und hat nur eine Zeile
Code:
var_dump($_RESPONSE);
 
Dann viel Erfolg! Und wenn es Probleme gibt, kannst du dich ja wieder melden.
 
Werbung:
Oke jetzt weiß ich nicht weiter, haben einen Seite gemacht die aus der config.txt Datei lesen soll.
PHP:
<html>
    <head>
    <title>Einstellungen</title>
<link rel="stylesheet" type="text/css" href="style.css" />           
    </head>

<body>
            <div id="attributes">
<table width="100%">
            <tr>
              <td width="271" bgcolor="#CCCCCC"><div align="right" class="style1 style3"><span class="style46" id="version">Timers Typ: 100  </span></div></td>
              <td width="271" bgcolor="#CCCCCC"><div align="center" class="style1 style3"><span class="style46" id="version"> Version: 1.00  </span></div></td>
                 <td width="191" bgcolor="#CCCCCC"><div align="left" class="style1 style3"><span class="style46" id="date">13.01.2016</span></div></td>
              </tr>
</table>
</div>

<div id="menu">
    <a href="index.php">Logout</a>
    <a href="service.php">Service</a>
    <a href="einstellungen.php">Einstellungen</a>
    <a href="logbuch.php">Logbuch</a>
    <a href="hilfe.php">Hilfe</a>
    <a href="settings.php">Settings</a>
    </div>
<br>
    <center><b><font size = 10>Einstellungen</font></b></center><br>
<form action=config.txt method=GET>
    <p>&nbsp;</p>
    <div style="margin-left: 250px; margin-right: 10px;">
        <table width="100%" height="14%" border="1">
        <tr>
        <td colspan="6"><center>Timer Zeiten &auml;nderen</center></td>
      </tr>
      <tr>
            <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-1</center></strong></td>
          <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-2</center></strong></td>
          <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-3</center></strong></td>
          <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-4</center></strong></td>
          <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-5</center></strong></td>
      </tr>
      <tr>
        <td><center><input type=\"text\" name=\"6\" value=""></center></td>
        <td><center><input type=\"text\" name=\"7\" value=""></center></td>
        <td><center><input type=\"text\" name=\"8\" value=""></center></td>
        <td><center><input type=\"text\" name=\"9\" value=""></center></td>
         <td><center><input type=\"text\" name=\"10\" value=""></center></td>
      </tr>
    </table>
        </div>
    <div id="form-submit" class="field f_100 clearfix submit">
               <input value="Speichern" type="submit">
          </div>
    </form>
    <br>
</body>
</html>

Und hier ist die config.txt Datei
Code:
int timer1 = 10;
int timer2 = 20;
int timer3 = 30;
int timer4 = 40;
int timer5 = 50;

Habe auch noch einen Logbuch gemacht und dann bekomme die config.txt sehr schön zusehen.

PHP:
<?php
$s_filename = 'config.txt';
$s_inhalt =  file_get_contents($s_filename);
if(isset($_POST['submit'])) {
  $r_handle = fopen($s_filename, "w+");
  if(!fwrite($r_handle, $_POST['inhalt'])) {
    echo "Schreiben ist Fehler geschlagen!";
    exit;
  } else {
    echo "&auml;nderungen gespeichert!";
    fclose($r_handle);
  }
} else {
echo'
<html>
<body>
<form method="post">
<center>
<textarea name="inhalt" cols="150" rows="30">'. $s_inhalt .'</textarea> <br />
</center>
</body>
</html>';
}
?>
 
Und was genau hindert dich daran, weiter zu machen? Hast du mal die split-Funktion angeschaut und das Gegenstück implode dazu? Dann brauchst eventuell noch strpos. Schau dir einfach mal die PHP String Funktionen an. Statt file_get_contents bietet sich für deinen Bedarf eventuell auch die Funktion file an.
 
Zuletzt bearbeitet:
Hab jetzt so viele Beispiele gesehen und ein paar Probiert, dass ich richtig verwirrt bin ich sehe durch Wald die Bäumen nicht mehr.

Bitte um hilfe.

PHP:
<form action=config.txt method=GET>
$section = file_get_contents('config.txt', NULL, NULL, 12, 3);
$var_dump($section);
    <p>&nbsp;</p>
    <div style="margin-left: 250px; margin-right: 10px;">
        <table width="100%" height="14%" border="1">
        <tr>
        <td colspan="6"><center>Timer Zeiten &auml;nderen</center></td>
      </tr>
      <tr>
            <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-1</center></strong></td>
          <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-2</center></strong></td>
          <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-3</center></strong></td>
          <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-4</center></strong></td>
          <td height="10%" nowrap="nowrap" class="style42"><strong><center>Timer-5</center></strong></td>
      </tr>
      <tr>
        <td><center><input type=\"text\" name=$b[0] value=""></center></td>
        <td><center><input type=\"text\" name=\"7\" value=""></center></td>
        <td><center><input type=\"text\" name=\"8\" value=""></center></td>
        <td><center><input type=\"text\" name=\"9\" value=""></center></td>
         <td><center><input type=\"text\" name=\"10\" value=""></center></td>
      </tr>
    </table>
        </div>
    <div id="form-submit" class="field f_100 clearfix submit">
               <input value="Speichern" type="submit">
          </div>
    </form>
 
Werbung:
Wenn du Hilfe willst, solltest genau sagen, wobei und uns nicht raten lassen. Auf den ersten Blick sieht man ja schon, dass du hier HTML und PHP wild mischst. PHP Code wird durch <?php ?> eingeschlossen und die Datei muss auf dem Server die Endung .php haben. var_dump ist eine Funktion und hat keinen $. Action muss auf die php-Datei zeigen, also beispielsweise verarbeite_config.php. Ich denke, du solltest erst mal ein paar sehr einfache Übungen machen und die auch verstehen, und nicht nur abkupfern, wie das berühmte Hello World, bevor du gleich mit Verarbeitung von Formularen und Lesen/Schreiben von Dateien loslegst. Ich Klinke mich hier nun aus, viel Erfolg.
 
Da du sicher spezielle Anforderungen hast, was das Format deiner Daten angeht, musst das sicher selbst basteln. Aber es gibt massig Beispiele zu PHP Formular Inhalt verarbeiten und PHP Datei Lesen/Schreiben. Da musst ein paar Beispiele studieren und vereinigen.
Dank NetAktiv für deine Zeit.

Aber was ich versucht habe ist einen Verbindung zumachen zwischen einen Textfeld
PHP:
<td><center><input type=\"text\" name=\"6\" value=""></center></td>
und die 1. zeile vom config.txt und dann pos 13, 14 und 15.
PHP:
$section = file_get_contents('config.txt', NULL, NULL, 12, 3);
.
Code:
int timer1 = 10;

Im Textfeld soll dann 10 stehen.

Hab schon viel gelesen aber ich weiß nicht weiter.
 
Zurück
Oben