Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP nietypowy problem [Zapis do pliku - oraz preg_match_all]
Forum PHP.pl > Forum > PHP
spec8320
Witam więc ostatnio bawiłem się trochę w PHP gdyż chciałem stworzyć skrypt który z pozycji przeglądarki mógłby edytować config do Ventrilo (Ventrilo = platforma do rozmów). Wszystko szło dobrze jednak jak zwykle napotkałem na przeszkodę której nie mogę obejść. Tutaj daje kod (jako, że post byłby za długi musiałem go wkleić):

http://rafb.net/p/XmGk4F72.html

Oraz przykładowy plik ventrilo_srv.ini :

http://rafb.net/p/UIxKTE89.html

Problem polega na tym, że ostatecznie zamiast Name=$zmienna (w pliku ventrilo_srv.ini) tą linijkę zastępuje dziwna rzecz otóż linijka ta jest zastąpiona przez kod
submit=zapisz

Domyślam się, że ten problem mieści się w linijce 102 jednak nie mam pojęcia jak go
rozwiązać liczę, że pomożecie...
-=Peter=-
Zamiast używać wyrażeń reguralnych do rozbijania pliku ini, skorzystaj z wbudowanego w php parsera, czyli funkcji parse_ini_file()

A jeśli chodzi o temat, to problem tkwi w wierszu 26. Wsadzasz $_POST do pętli foreach, a w $_POST jest przecież klucz submit z jakąś tam wartością, więc nie dziwne że to wyświetla...
spec8320
-=Peter=-, zrobiłem tak jak mówiłeś ... a właściwie może inaczej nie wiem czy dokładnie o to ci chodziło ... ale w jednym bądź razie nie działa. Możesz mi przesłać co ty miałeś namyśli najlpiej w kodzie ? Byłbym wdzięczny
-=Peter=-
Spróbuj tak (18. wiersz)
  1. <?php
  2. if($_POST['submit']){
  3. unset($_POST['submit']);
  4. //dalej tak jak masz
  5. }
  6. ?>
spec8320
-=Peter=-, dzięki bardzo nie wiedziałem, że problem może być aż tak banalny. Dałem ci te ,,Pomógł''. Dzięki człowieku smile.gif.

Jakbyś miał chwilkę mam jeszce jeden problem z tym kodem. Otóż jeżeli chodzi o Password nie wiem z jakiego powodu są 2. Kod obecnie wygląda tak

http://rafb.net/p/GSAwoe44.html

Uwzględniłem twoją poprawkę ale odkomentowałem Password.
Efekt jest taki: http://louner.ilo.pl/~spec/spec/spec.php
-=Peter=-
Dlatego masz 2 razy password, bo w pliku ventrilo_srv.ini masz dwa razy zdefiniowane to pole (http://rafb.net/p/UIxKTE89.html - 9. i 40. wiersz).
spec8320
-=Peter=-, dziękuje ...

Temat do zamknięcia
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.