[PHP] Odczyt, wypełnienie treścią, zapis pliku

0

Witam! Moje zmagania z rejestracją jeszcze się nie skończyły, ponieważ dodałem pewną opcje. Nie lubie baz danych MySQL, dlatego każdy użytkownik będzie miał po 2 bazy danych, jedną w pliku drugą w MySQL... ale to nie ważne podam urywek z kodu:

        $nick = $_POST['nick'];
        $nazwapliku = "literki";
        $bazauzytkownika = $nazwapliku.$nick;
        $nowedane = "bld1=1:bld2=0:bld3=1\n";
        fopen("users/$bazauzytkownika.txt", "a"); //tworzy plik z baza uzytkownika
        $plikens = 'users/$bazauzytkownika.txt';
        fwrite($plikens, $nowedane);

teraz błąd:

Warning: fwrite(): supplied argument is not a valid stream resource in /home/vol8/xtreemhost.com/xth_3399612/htdocs/register.php on line 76

To jest w jakiś tam sposób źle sklejone do kupy. Plik zostaje utworzony (gdy wpiszemy w formularz "DaRkMAN" i zatwierdzimy, utworzy się plik literkiDaRkMAN.txt w katalogu users. Jednak jak widać chcę, aby po utworzeniu pliku, od razu została do niego dodana treść: bld1=1:bld2=0:bld3=1, co utworzy taką baze, którą rozumieć będę tylko ja i przeglądarka.
Drugi problem - jeżeli otworzymy plik, jak wyszukać w tym pliku np. bld1= i sprawdzić co jest po znaku =, czyli przykładowo: w bazie mam bld1=1, przeglądarka wyświetla "TAK" mam bld2=0, to wyświetla "NIE". Czekam na pomoc.

0

fwrite przyjmuje uchwyt pliku, nie nazwę pliku?

0

ło.... zamiast

$plikens = 'users/$bazauzytkownika.txt';

trzeba $plikens = fopen("users/$bazauzytkownika.txt","r+");

 No dobra, a ten drugi "problem" ?
0

wczytać plik, rozbić po separatorze wartości (:) a następnie każdą parę przeszukać.

0
$dane = 'bld1=1:bld2=0:bld3=1';

parse_str(str_replace(':', '&', $dane), $dane);
echo $dane['bld1'] == '1' ? 'TAK' : 'NIE';

1 użytkowników online, w tym zalogowanych: 0, gości: 1