php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.05.2008, 13:26  
Benutzer
 
Registriert seit: 19.05.2008
Beiträge: 67
Templerschaf befindet sich auf einem aufstrebenden Ast
Standard DHCP Datei ändern

Hallo,

ich suche ein script, welches bestimmte Zeilen in einem File ändert.
Ich habe mit PHP und HTML ein Webinterface gemacht um auf linux den DHCP-Service per Oberfläche verwalten zu können. Nun habe ich ein Formular und jetzt will ich das die Daten die in dieses Formular geschrieben werden in mein dhcpd.conf file geschrieben werden. Aber dieses file sollte nicht direkt neu geschrieben werden sondern nur bestimmte Zeilen editiert werden. Ist das möglich? Hat jemand die güte mir das mal zu zeigen bzw. das zu programmieren?
Templerschaf ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 19.05.2008, 13:33  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Ist mit den File- und Stringfunktionen doch gar kein Problem.

Du benutzt file() und hast damit schonmal jede Zeile einzeln in einem Array. Die Zeilen kannst du dann nochmal wie gewünscht auseinanderbasteln (mit den Stringfunktionen) und ggf. die Stelle ändern. Dann schreibst du das ganze wieder in die Datei rein und fertig.
cycap ist offline  
Alt 19.05.2008, 13:35  
Benutzer
 
Registriert seit: 19.05.2008
Beiträge: 67
Templerschaf befindet sich auf einem aufstrebenden Ast
Standard

Könntest du mir vll ein einfaches beispiel zeigen ?
Ich bin noch ziemlich neu und bräuchte mal ein kleines Beispiel. Nur ganz klein nix großes. Ist das möglich?
So ein zwei oder dreizeiler? Wäre subba

Tut mir leid wegen dem anderem Threat hab ihn schon geschlossen! Hab ich vor deiner Antwort schon aufgemacht gehabt. Sorry für das schlechte benehmen!

Geändert von Templerschaf (19.05.2008 um 13:41 Uhr).
Templerschaf ist offline  
Alt 19.05.2008, 13:43  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Ich brauch dir kein Beispiel schreiben wenn in der PHP-Doku eins steht:

PHP: file - Manual

Ich weiss nicht wie die DHCP-Datei aufgebaut ist, aber Funktionen wie substr() oder strpos() oder explode() können dir sicher hilfreich sein. Dazu findest du in der PHP-Doku auch Beispiele
cycap ist offline  
Alt 19.05.2008, 13:46  
Benutzer
 
Registriert seit: 19.05.2008
Beiträge: 67
Templerschaf befindet sich auf einem aufstrebenden Ast
Standard

Meine dhcpd.conf sieht so aus

Code:
#######################
### etc/dhcpd.conf ####
#######################


# Für die Netzwerkkarte eth0 (LAN) gelten folgende Einstellungen

subnet 192.168.0.0 netmask 255.255.255.0 {

  # dynamische Zuweisung bei fremden Rechnern im LAN
  range 192.168.0.100 192.168.0.200;

  # Netzmaske
  option subnet-mask 255.255.255.0;

  # Domainname = firewall.lan
  option domain-name "firewalllan";

  # Minimale Ausleihzeit in Sekunden
  default-lease-time 600;

  # Maximale Ausleihzeit in Sekunden
  max-lease-time 7200;
  
  # Internet-Gateway
  option routers 192.168.0.1;

  # zwei DNS-Server
  #option domain-name-servers xxx.xxx.xxx.xxx, xxx.xxx.xxx.xxx;

}
Wobei ich eigentlich alles editieren muss was kein # Zeichen davor hat.
Ist es einfacher mit PHP das komplett neu schreiben zu lassen oder sollte man es doch editieren?
Templerschaf ist offline  
Alt 19.05.2008, 13:47  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Bei einer so kleinen Datei ist es wahrscheinlich wirklich einfacher die Datei komplett neu zu schreiben, was aber mit dem auslesen der Werte nichts zu tun hat
cycap ist offline  
Alt 19.05.2008, 13:55  
Benutzer
 
Registriert seit: 19.05.2008
Beiträge: 67
Templerschaf befindet sich auf einem aufstrebenden Ast
Standard



Und mit welchem Befehl kann ich z.B ein Wort aus einer Variablen mit einem Satz bereichern?

Also wenn ich sage in meiner Varibalen steht schule. Wie Befehle ich php dann das es in ein File schreibt ICH LIEBE schule SEHR. Wie bring ich php dazu diese drei wörter hinzuzufügen?




Danke für deine Nerven...


Ps: Wenn ich dich nerve kennst du n turtorial wo meine Wünsche ziemlich gut behandelt werden?
Templerschaf ist offline  
Alt 19.05.2008, 14:01  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Deine Fragte ist jetzt also wie man Strings verknüpft? Na nichts leichter als das:

PHP-Code:
$text "Schule";

$gesamt "ICH LIEBE ".$text." SEHR"
cycap ist offline  
Alt 19.05.2008, 14:20  
Benutzer
 
Registriert seit: 19.05.2008
Beiträge: 67
Templerschaf befindet sich auf einem aufstrebenden Ast
Standard

Okay...

Code:
<?php

  $subnet = $_POST["subnet"];
  $start_adress = $_POST["start_adress"];
  $end_adress = $_POST["end_adress"];
  $subnetmask = $_POST["subnetmask"];
  $gateway = $_POST["gateway"];
  $default_lease_time = $_POST["default_lease_time"];
  $max_lease_time = $_POST["max_lease_time"];
  $domain = $_POST["domain"];
  $primary_dns = $_POST["primary_dns"];
  $secondary_dns = $_POST["secondary_dns"];


  $array = file('/etc/dhcpd.conf');


?>
Ich hab jetzt was in meinen Variablen stehn. Ich hab meine httpd.conf eingelesen... Und wie sag ich jetzt dem Herrn PHP pass auf schreibe was in der variablen steht in die Zeile 8 bzw. ersetze was in Zeile 8 steht mit dem was in meiner variablen steht?
Templerschaf ist offline  
Alt 19.05.2008, 14:26  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

PHP-Code:
$array[8] = "subnet ".$subnet." netmask ".$subnetmask." {";
file_put_contents('/etc/dhcpd.conf',implode($array)); 
klar soweit?

[edit]
muss wohl $array[7] sein, weil Zeile 1 dem Array-Eintrag 0 zugewiesen wird. Außerdem kann es sein das file() die Zeilenumbrüche nicht mit übernimmt, das heisst du müsstest implode("\n",$array) machen, aber da bin ich mir nicht sicher

Geändert von cycap (19.05.2008 um 14:31 Uhr).
cycap ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Hochgeladene Datei wird doppelt abgelegt thecracked PHP Tipps 2008 3 01.07.2008 16:31
Datei per Buttonklick runterladen... go1denboy PHP Tipps 2008 7 14.06.2008 20:25
Großer Baum -> Große Datei -> Hohe Ladezeit :( PsychoEagle PHP Tipps 2008 7 22.09.2007 12:44
.gz Datei entpacken und mit dem Inhalt weiterarbeiten R4v3r PHP Tipps 2007 8 02.02.2007 14:49
Datei durchsuchen Wöllchen Beitragsarchiv 3 02.03.2006 22:23
[Erledigt] Datei mit &amp;amp;amp;amp;quot;w&amp;amp;amp;amp;quot; schreiben -&amp;amp;amp;amp;gt PHP-Fortgeschrittene 17 30.12.2005 13:58
Datei auf FTP-Server ändern ohne lokal abzuspeichern faux PHP-Fortgeschrittene 11 02.09.2005 11:54
Ordner Struktur auslesen bestimmte datei finden .... silverghost PHP Tipps 2005 3 24.05.2005 13:55
Includete Datei nicht gleich ausgeben Madden PHP-Fortgeschrittene 1 12.05.2005 00:19
Dateien lesen und schreiben [mehr als: r,a,w]? PHP Tipps 2004 4 24.10.2004 18:53
Zeilenumbrüche & Neudatein mit PHP PHP Tipps 2004 5 21.10.2004 11:38
Datei mit php erzeugen Stümper PHP Tipps 2004 4 12.10.2004 12:51
php und ftp PHP Tipps 2004 4 07.10.2004 09:58
[Erledigt] datei editieren PHP Tipps 2004 1 10.09.2004 20:33
(ich schonwieder) Link seite automatisch imported_DJ Nuno PHP Tipps 2004 14 19.08.2004 17:42

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
dhcp datei, dhcp datei 2008

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:00 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum