_scorpio__
14.08.2003, 17:16:34
Chce stworzyc do swojego skryptu plik konfiguracyjny z ktorego beda pobierane wszelkiego typu dane. I teraz pytanie jak zrobic by z pliku w ktorym dane beda zapisane w sposob
aaa=xxx
bbb=yyy
ccc=eee
Oczytac dane w ten sposob ze wartosci z aaa zostane do pola1 a wartosci ccc do pola2 a z bbb do 5 pola, i zeby z jednego plikukilka podstron moglo szczytywac dane
spenalzo
14.08.2003, 17:36:48
A nie lepiej trzymać same dane bez wartośi? Bo ja za bardz nie widzę sensu.
A jak masz same wartości oddzielone czymśtam to ładujesz cały plik i rozdzielasz przy pomocy [manual:55b48a8ab3]explode[/manual:55b48a8ab3] i masz ładna tablice.
adwol
14.08.2003, 17:43:28
Cytat
Chce stworzyc do swojego skryptu plik konfiguracyjny z ktorego beda pobierane wszelkiego typu dane. I teraz pytanie jak zrobic by z pliku w ktorym dane beda zapisane w sposob
aaa=xxx
bbb=yyy
ccc=eee
Oczytac dane w ten sposob ze wartosci z aaa zostane do pola1 a wartosci ccc do pola2 a z bbb do 5 pola, i zeby z jednego plikukilka podstron moglo szczytywac dane
Nie za bardzo rozumiem o co chodzi Ci z tymi polami.
Jak chcesz wyciagnąć konfig postaci klucz=wartosc to najprościej tak:
[php:1:bcc786aa1e]<?php
foreach (file("config") as $linia)
{
$linia = rtrim($linia);
list($k, $v) = explode('=', $linia, 2);
$conf[$k] = $v;
}
?>[/php:1:bcc786aa1e]
Omega
14.08.2003, 18:03:21
Odczytaj plik przy pomocy polecenia file(), nastepnie exploduj poprzez separator "=" i dane zapisz do tqablicy. W postaci kluczy elementy z indexem [0] (po eksplodowaniu), a wartości z indexem [1]. I problem będziesz miał rozwiązany.
spenalzo
14.08.2003, 18:05:54
Cytat
Odczytaj plik przy pomocy polecenia file(), nastepnie exploduj poprzez separator "=" i dane zapisz do tqablicy. W postaci kluczy elementy z indexem [0] (po eksplodowaniu), a wartości z indexem [1]. I problem będziesz miał rozwiązany.
[php:1:d70104c9bc]<?php
$f=file("plik.txt");
for($i=0; $i<count($f); $i++)
{
$tab[$i]=explode("=",$f[$i]);
}
echo $tab[18][0]; // wiersz 18, wartość przed =
echo $tab[1][1]; // wiersz 1, wartość po =
?>[/php:1:d70104c9bc]
jono
14.08.2003, 22:46:10
Równie dobrze, a może nawet lepiej zrób tak:
Plik config.php:
[php:1:4b97bbbd9e]<?php
$aaa = 'aaa';
$bbb = 'bbb';
?>[/php:1:4b97bbbd9e]
i teraz plik np. index.php:
[php:1:4b97bbbd9e]<?php
include('config.php');
echo $aaa;
echo $bbb;
?>[/php:1:4b97bbbd9e]
Po co robić file() explode() lepiej od razu zrób plik konfiguracyjny jako plik php ze zmiennymi i nie będziesz musiał kombinować
Jabol
14.08.2003, 22:56:42
jono, ale taki plik się trudniej edytuje za pomocą php.
Spróbuj tak:[php:1:51823c4319]<?php
foreach ( file( "config" ) as $linia )
{
$linia = trim( $linia );
list( $k, $v ) = explode( '=', $linia, 2 );
${ trim( $k) } = trim( $v );
}
?>[/php:1:51823c4319]
ps. przerobiony skrypt spenalza, tylko troche inaczej zapisuje dane
adwol
14.08.2003, 23:29:30
Cytat
jono, ale taki plik się trudniej edytuje za pomocą php.
Spróbuj tak:[php:1:daeaa85da1]<?php
foreach ( file( "config" ) as $linia )
{
$linia = trim( $linia );
list( $k, $v ) = explode( '=', $linia, 2 );
${ trim( $k) } = trim( $v );
}
?>[/php:1:daeaa85da1]
ps. przerobiony skrypt spenalza, tylko troche inaczej zapisuje dane
Tia... bardzo podobny posłałem wcześniej. Tylko nie było trimowania klucza i wartości.
spenalzo
14.08.2003, 23:34:00
Jest jeszcze jedno wyjście:
[php:1:2bacfeab1a]<?php
$f=file("plik");
for($i=0; $i<count($f); $i++)
{
parse_str($f[$i]);
}
?>[/php:1:2bacfeab1a]
i masz tak jakby to były normalne zmienne.
_scorpio__
15.08.2003, 10:39:11
spenalzo a teraz jak z tego twojego przykladu dane wczytac na strone ?
spenalzo
15.08.2003, 14:47:22
Cytat
spenalzo a teraz jak z tego twojego przykladu dane wczytac na strone ?
[php:1:c437a4c9aa]<?php
echo $aaa; //xxx
echo $bbb; //yyy
echo $ccc; //eee
?>[/php:1:c437a4c9aa]
_scorpio__
15.08.2003, 17:32:33
Cytat
Cytat
spenalzo a teraz jak z tego twojego przykladu dane wczytac na strone ?
[php:1:0e7e0b87cb]<?php
echo $aaa; //xxx
echo $bbb; //yyy
echo $ccc; //eee
?>[/php:1:0e7e0b87cb]
a czy moge odczytac w jednej stronie samo bbb w drugiej np samo ccc ?
[Regis]
15.08.2003, 19:44:26
Tak z ciekawosci - a nie lepiej zeby plik konfiguracyjny byl normalnym plikiem php ze zmiennymi ? Np. tak:
[php:1:e9a627dc5e]<?php
$bardzo_wazna_zmienna = 1;
$ilosc_linii_na_stronie = 20;
$aaa = "xxx";
?>[/php:1:e9a627dc5e]
itp ?
Wtedy taki plik wystarczy includowac i mozna normalnie korzystac ze zmiennych. To chyna znacznie prosciej, a o jakichs waznych przeciwskazaniach nie slyszalem jeszcze
Jabol
15.08.2003, 20:06:55
[Regis]: Taki plik byłoby trudno zmieniac, chociaz przyznam, ze odczytanie byloby banalne
spenalzo
15.08.2003, 21:58:14
Cytat
[Regis]: Taki plik byłoby trudno zmieniac, chociaz przyznam, ze odczytanie byloby banalne
Ale w temacie jest plik konfiguracyjny, więc ustawia się to rzadko, najczęściej raz i aktualizacji dokonuje się przeważnie ręcznie.
_scorpio__
15.08.2003, 22:15:03
No wiec czego najlepiej urzyc tak zeby bylo dobre i spelnialo moje/nasze oczekiwania

?
spenalzo
15.08.2003, 22:21:42
Cytat
No wiec czego najlepiej urzyc tak zeby bylo dobre i spelnialo moje/nasze oczekiwania

?
Napisz, czy to jest plik często czy rzadko uaktualniany. Jeżeli rzadko tam sobie zdefiniuj wartości przypisane do zmiennych, a jak na sztywno to użyj mojego ostatniego skryptu lub jakiegoś innego.
jono
15.08.2003, 22:31:34
heh, omawiacie pomysł który rzuciłem kilka postów wcześniej. A edycja takiego pliku z poziomu php?? W sumie, jeżeli nie ma byc zmiennej ilości danych jest prosta.
[php:1:2d7650304c]<?php
$c = 'wartosc ktora chcemy wrzucic';
$d = 'mozna ja pobrac z formularza...';
$zawartosc =
'<?php
$a = ''.$c.'';
$b = ''.$d.'';
?>'
$fp = fopen("config.php", "w");
fputs($fp, $zawartosc);
fclose($fp);
?>[/php:1:2d7650304c]
co da efekt w zapisanym pliku:
[php:1:2d7650304c]<?php
$a = 'wartosc ktora chcemy wrzucic';
$b = 'mozna ja pobrac z formularza...';
?>[/php:1:2d7650304c]
Chociaż i tak poprawiłem, bo skaszaniłem - zapomniałem średnika
spenalzo
15.08.2003, 22:36:49
[php:1:07989b4509]<?php
$a = '.$c.'
$b = '.$d.'
?>[/php:1:07989b4509]
Pamiętaj, że w takim przypadku musisz dać $zmienna, żeby wyświetlił sie/zapisał razem ze znakiem dolara, bo inaczej php podstawi pod to wartość zmiennej.
[php:1:07989b4509]<?php
$a = '.$c.'
$b = '.$d.'
?>[/php:1:07989b4509]
jono
15.08.2003, 22:40:42
jeżeli stosujesz ' a nie " to $ nie jest interpretowany - uwierz mi - wielokrotnie takie coś robiłem, łącznie z plikami konfiguracyjnymi oraz z czymś takim jak skrypt php z unikalnym kluczem...
spenalzo
15.08.2003, 22:52:41
Cytat
jeżeli stosujesz ' a nie " to $ nie jest interpretowany - uwierz mi - wielokrotnie takie coś robiłem, łącznie z plikami konfiguracyjnymi oraz z czymś takim jak skrypt php z unikalnym kluczem...
No tak, sorry - doczytałem w manualu, że to co jest umieszczone w apostrofach nie jest interpretowane, w przeciwieństwie do cudzysłowów.
_scorpio__
16.08.2003, 16:04:23
Czyli ja juz sie zgubilem co najlepiej uzyc ponawiam bo propozycji jest 1000 a nie wszystkie wedlug was sa dobre. Wiec niech ktos przedstawi jedna a dobra
jono
16.08.2003, 16:44:53
Odpowiedz konkretnie na pytanie:
Czy plik konfiguracyjny ma byc dynamiczny, czy np. będzie tam hasło do bazy danych itp., czyli dane, które się często nie zmieniają?
To jest najważniejsze.
jeżeli nie ma byc dynamiczne, to najlepiej użyj include() i po prostu zmienne, a jeżeli chcesz dynamicznie to inne sposoby.
_scorpio__
16.08.2003, 19:45:36
Tam maja byc danenp ip serwerow kolory strony i zmienne ktore nie beda zapisywane ze strony ale to zadna konkretna baza danych mysql ani nic tylko dane ktore zostana raz po instalacji skryptu zapisane i bede pozniej odczytywane
jono
16.08.2003, 20:56:21
NO to zrób jeden plik .php zawierający konkretne zmienne, np
[php:1:1679c2296b]<?php
$tlo = 'white';
?>[/php:1:1679c2296b]
a potem na stronie
[php:1:1679c2296b]<?php
include("conf.php");
echo"<table bgcolor=$tlo>";
//itd...
?>[/php:1:1679c2296b]
StevDefs
25.08.2019, 15:43:17
Possible Side Effects For Amoxicillin Cialis Gravidanza
cialis tablets for sale Hydrochlorothiazide Medicine Overseas Plymouth Levitra Bayer Posologia Kamagra Us
Kamagra Oral Jelly 100mg Offers
viagra online Viagra Pricelist Levitra Costo On Line
Secure Ordering Fluoxetine Medication Internet Free Shipping Overnight Shippingprozac
generic cialis from india Where To Order Zentel Pills Secure Ordering Over Night Buy Retin A Without Prescription No Prescription Atomoxetine
Cialis And Dapoxetine Acheter Cialis Non Generique
achat viagra france Cialis Que Es Yahoo Viagra Generikum Forum
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.