php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 25.01.2006, 15:37  
Erfahrener Benutzer
 
Registriert seit: 02.12.2003
Beiträge: 269
phpfortgeschrittener
phpfortgeschrittener eine Nachricht über ICQ schicken phpfortgeschrittener eine Nachricht über AIM schicken phpfortgeschrittener eine Nachricht über MSN schicken phpfortgeschrittener eine Nachricht über Yahoo! schicken
Standard variableninhalt einer externen datei ändern

hallo,
ich habe ein adminpanel, indem ich gerne die konfigurationen administrieren möchte.
ich hab hier ein code entwickelt, der jede zeile einliest und überprüft auf die bestimmte zeile, die er ändern soll.
PHP-Code:
<?php
$zeile 
file ("../config.inc.php");
for (
$i 0$i <= count ($zeile); $i++) {
    if (
$zeile[$i] == '$cfg["newsscript"]["bactive"] = ' $cfg["newsscript"]["bactive"] . ';') {
        echo 
"test";
        
$zeile[$i] = '$cfg["newsscript"]["bactive"] = ' . ($cfg["newsscript"]["bactive"] == false "true" "false") . ';';
    }
}
$new implode ("\r\n"$zeile);
$fp fopen ("../config.inc.php""r+");
fwrite ($fp$new);
fclose ($fp);
?>
wie ihr seht, habe ich schon zum nachschauen echo "test"; gemacht, wobei er diesen test nicht ausgibt.
in der config-datei steht folgendes:
PHP-Code:
<?php
$cfg
["mysql"]["host"] = "localhost";
$cfg["mysql"]["port"] = "3306";
$cfg["mysql"]["user"] = "xxxx";
$cfg["mysql"]["pass"] = "xxxx";
$cfg["mysql"]["name"] = "xxxxxx";

$cfg["newsscript"]["bactive"] = true;
$cfg["newsscript"]["perpage"] = 10;
$cfg["newsscript"]["dformat"] = "d.m.y";
$cfg["newsscript"]["tformat"] = "H:i";

$cfg["tpl"]["style"] = "default";
?>
vorallem habe ich noch gemerkt wenn ich mehrmals diese variable ändern lasse, dass er mir ewig viele zeilenumbrüche rein haut.
kann man das auch irgendwie verhindern?
danke im vorraus.
mfg,
WasserDragoon.
phpfortgeschrittener ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 25.01.2006, 15:58  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

Zu deiner ersten Frage: Du hast die Anführungszeichen vergessen ....
Eigentlich reicht es auch, wenn du den Anfang einer Zeile überprüfst

Aber ich würde es grundlegend anders machen (mir kommt es so vor, als hätte ich dir das schonmal gesagt ) und diese variablen in einer externen datei lagern, auf die man von außen keinen Zugriff hat
Code:
localhost
3306
mein_user
mein_passwort
mein_name
und diese in der config-datei mit file auslesen... das macht das ändern auch viel leichter.

Wegen deiner zweiten Frage: änder

Code:
$new = implode ("\r\n", $zeile);
in
Code:
$new = implode ("", $zeile);
dann sollte das problem behoben worden sein
Buhmann ist offline  
Alt 25.01.2006, 16:26  
Erfahrener Benutzer
 
Registriert seit: 02.12.2003
Beiträge: 269
phpfortgeschrittener
phpfortgeschrittener eine Nachricht über ICQ schicken phpfortgeschrittener eine Nachricht über AIM schicken phpfortgeschrittener eine Nachricht über MSN schicken phpfortgeschrittener eine Nachricht über Yahoo! schicken
Standard

welche anführungszeichen?
da steht = true und nicht = "true";
ja ich bins Mr.Pixel
so sieht man sich wieder lol
zweite frage sollte nun klar sein danke
aber erste frage steht immernoch offen, weil wie gesagt keine anführungszeichen da sind dann brauch ich die auch nicht

EDIT: das mit den variablen in externe datei speichern dass man von außen keinen zugriff hat ist auch nicht nötig, da dieses script im adminpanel ausgeführt wird und der adminpanel-ordner ist htaccess geschützt.
phpfortgeschrittener ist offline  
Alt 25.01.2006, 16:34  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

PHP-Dateien editieren ist nicht gut und immer vermeidbar.
Warum benutzt du keine INI-Files zum Setzen von Einstellungen etc.?

http://de.php.net/parse_ini_file

Dafür sind Konfigurations-Dateien schließlich da.
Oder was hast du vor?
Zergling-new ist offline  
Alt 25.01.2006, 16:58  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

Zitat:
Zitat von phpfortgeschrittener
welche anführungszeichen?
da steht = true und nicht = "true";
achso ich hab übersehen, dass es um diese zeile ging....
nunja, mach mal
PHP-Code:
<?php
echo true;
?>
dann wirst du sehen, wo der fehler liegt

mach einfach ein array
array("false","true")
und gib dann $array[(int) $cfg["newsscript"]["bactive"]] aus

ansonsten halt parse_ini
Buhmann ist offline  
Alt 25.01.2006, 17:13  
Erfahrener Benutzer
 
Registriert seit: 02.12.2003
Beiträge: 269
phpfortgeschrittener
phpfortgeschrittener eine Nachricht über ICQ schicken phpfortgeschrittener eine Nachricht über AIM schicken phpfortgeschrittener eine Nachricht über MSN schicken phpfortgeschrittener eine Nachricht über Yahoo! schicken
Standard

hmm wenn zergling schon sagt, dass es zu vermeiden ist, werde ich das auch tun
obwohl es im adminpanel ausgeführt wird...
dann muss ich zwar das ganze script anpassen aber so viel arbeit ist das denke ich auch nicht.
dann schau ich mir mal das ini zeugs an.
danke trotzdem buhmann
danke auch dir zergling.
mfg,
WasserDragoon.
phpfortgeschrittener ist offline  
Alt 25.01.2006, 17:20  
Erfahrener Benutzer
 
Registriert seit: 02.12.2003
Beiträge: 269
phpfortgeschrittener
phpfortgeschrittener eine Nachricht über ICQ schicken phpfortgeschrittener eine Nachricht über AIM schicken phpfortgeschrittener eine Nachricht über MSN schicken phpfortgeschrittener eine Nachricht über Yahoo! schicken
Standard

aber mal so nebenbei in eine ini datei kann doch jeder reinschauen??!!

ok ich kann ja die mysql daten in der config.inc.php drin lassen und die settings sind dann in der settings.ini
und dann muss ich nur den code oben mit der ini anpassen und dann dürfte es eigentlich gehen, oder?
phpfortgeschrittener ist offline  
Alt 25.01.2006, 17:53  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Ja, sie muss halt in einem htaccess-geschützten Ordner liegen oder außerhalb des Webroots. Ich weiß nicht genau was du machen willst, aber PHP-Dateien schreiben ist wie gesagt nicht nötig.
Notfalls eine Datenbank für die Einstellungen benutzen.
Zergling-new 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
Datei auf FTP-Server ändern ohne lokal abzuspeichern faux PHP-Fortgeschrittene 11 02.09.2005 11:54
Variablen von einer externen Datei auslesen PHP Tipps 2005-2 7 22.08.2005 22:58
Ordner Struktur auslesen bestimmte datei finden .... silverghost PHP Tipps 2005 3 24.05.2005 13:55
Größe einer EXTERNEN - Datei ermitteln PHP-Fortgeschrittene 14 22.04.2005 20:48
bei include(); nur 1 Funktion in der externen Datei? PHP Tipps 2005 7 20.03.2005 11:10
[Erledigt] mail versand mit anhang (-- fopen(), fread(), filesize() --) PHP Tipps 2005 5 29.01.2005 18:36
Bestimmtezeilen aus einer externen Datei auslesen Stinger PHP Tipps 2004 6 12.10.2004 16:32
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
Wie kann ich eine PHP Datei in eine HTML Datei umwandeln PHP Tipps 2004 2 12.08.2004 18:04

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
varialblen in datei ändern php, php externe datei zeile ändern

Alle Zeitangaben in WEZ +1. Es ist jetzt 21: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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.