ďťż
Podstrony
|
telcocafemam plik add_link.php z formularzem dodawania linka. Zapisuje mi dane do pliku sterowanie_linki.php, a plik sterowanie_linki.php ma się includowac do pliku sterowanie.php jednak wywala błąd.Tu plik sterowanie.php: <?php if (!isset($_REQUEST["url"])) $url="glowna"; else $url=$_REQUEST["url"]; switch ($url) { include ("sterowanie_linki.php"); default: include ("main.php"); } ?> http://lksdownload.o.../sterowanie.php w switchu masz błąd :-) brakuje jakiegoś case :] inklud nie może tam być wstawiony od tak sobie :) zresztą po co Ci słicz jak z niego nie korzystasz? Użytkownik Bełdzio edytował ten post 16 lipiec 2006, 13:21 mam plik sterowanie.php i sterowanie_linki.php Do pliku sterowanie.php dołaczam sterowanie_linki.php. Gdyby zamiast include ("sterowanie_linki.php"); wkleic zawartosc tego pliku wyglądało by to tak: <?php if (!isset($_REQUEST["url"])) $url="glowna"; else $url=$_REQUEST["url"]; switch ($url) { case "glowna": include ("main.php"); break; case "ksiega_gosci": include ("ksiega_gosci.php"); break; case "panel": include ("admin/panel.php"); break; case "wyniki_tabela": include ("tabela.php"); break; case "klub": include ("klub.php"); break; case "historia": include ("historia.php"); break; case "jak_to_drzewiej_bywalo": include ("jak_to_drzewiej_bywalo.php"); break; case "jak_rodzily_sie_lzs": include ("jak_rodzily_sie_lzs.php"); break; case "powstanie_lzs_studzionka": include ("powstanie_lzs_studzionka.php"); break; case "powstanie_lks_studzionka": include ("powstanie_lks_studzionka.php"); break; case "boisko": include ("boisko.php"); break; case "dom_sportowca": include ("dom_sportowca.php"); break; case "pilka_nozna_1": include ("pilka_nozna_1.php"); break; case "pilka_nozna_2": include ("pilka_nozna_2.php"); break; case "pilka_siatkowa": include ("pilka_siatkowa.php"); break; case "tenis_stolowy": include ("tenis_stolowy.php"); break; case "zloty_kask": include ("zloty_kask.php"); break; case "imprezy_rekreacyjno-sportowe": include ("imprezy_rekreacyjno-sportowe.php"); break; case "prezesi_lzs_lks": include ("prezesi_lzs_lks.php"); break; case "reklama": include ("reklama.php"); break; case "mapa_strony": include ("mapa_strony.php"); break; case "o_nas": include ("o_nas.php"); break; case "kadra": include ("kadra.php"); break; default: include ("main.php"); } ?> jednak muszę uzyc w tym przypadku inkludowania bo jest mi to niezbedne poniewaz dane w pliku sterowanie_linki.php się zmieniają. Wiem, ze bląd tkwi gdzieś tu: switch ($url) { include ("sterowanie_linki.php"); default: include ("main.php"); } ale niestety nie jestem zaawansowanym php'owcem i nie wiem co tam niedziła. Użytkownik mic22 edytował ten post 16 lipiec 2006, 18:30 inklud nie może tam być wstawiony od tak sobie smile.gif a od jak sobie moze byc wstawiony? Użytkownik mic22 edytował ten post 16 lipiec 2006, 14:48 Zamiast tego : switch ($url) { include ("sterowanie_linki.php"); default: include ("main.php"); } Zrób tak: include('sterowanie_linki.php') $switch .= 'switch ($url){'; $switch .= sterowanie_linki(); $switch .= 'default:include ("main.php");}'; eval($switch); Gdzie sterowanie_linki() to funkcja w pliku sterowanie_linki.php zwracajaca kod ,których chcesz w nim mieć ;) BTW wstaw zbyt długie kody w codebox ;) Użytkownik .:DzIuDek:. ™ edytował ten post 16 lipiec 2006, 15:07 .:DzIuDek:. ™ nie działa :/ .:DzIuDek:. ™ nie działa :/ A plik sterowanie_linki.php wygląda tak : <?php function sterowanie_linki(){ $kejsy = 'case "glowna": include ("main.php"); break; case "ksiega_gosci": include ("ksiega_gosci.php"); break; case "panel": include ("admin/panel.php"); break; case "wyniki_tabela": include ("tabela.php"); break; case "klub": include ("klub.php"); break; case "historia": include ("historia.php"); break; case "jak_to_drzewiej_bywalo": include ("jak_to_drzewiej_bywalo.php"); break; case "jak_rodzily_sie_lzs": include ("jak_rodzily_sie_lzs.php"); break; case "powstanie_lzs_studzionka": include ("powstanie_lzs_studzionka.php"); break; case "powstanie_lks_studzionka": include ("powstanie_lks_studzionka.php"); break; case "boisko": include ("boisko.php"); break; case "dom_sportowca": include ("dom_sportowca.php"); break; case "pilka_nozna_1": include ("pilka_nozna_1.php"); break; case "pilka_nozna_2": include ("pilka_nozna_2.php"); break; case "pilka_siatkowa": include ("pilka_siatkowa.php"); break; case "tenis_stolowy": include ("tenis_stolowy.php"); break; case "zloty_kask": include ("zloty_kask.php"); break; case "imprezy_rekreacyjno-sportowe": include ("imprezy_rekreacyjno-sportowe.php"); break; case "prezesi_lzs_lks": include ("prezesi_lzs_lks.php"); break; case "reklama": include ("reklama.php"); break; case "mapa_strony": include ("mapa_strony.php"); break; case "o_nas": include ("o_nas.php"); break; case "kadra": include ("kadra.php"); break;'; return $kejsy; } ?> ? I co się pojawia ,jakieś błedy czy co ? muszę uzyskać taki efekt! http://img63.imageshack.us/img63/4563/9911ea3.jpg muszę uzyskać taki efekt! http://img63.imageshack.us/img63/4563/9911ea3.jpg A czy nie lepiej byłoby tego całego switcha wrzucić w funkcję ,która pobierałaby zmienną $url i umieścić w pliku sterowanie_linki.php ? No bo jak to z eval'em Ci nie działa no to sam już nie wiem jak to można inaczej zrobić :/ Nie wiem czy nie lepiej:P Nie znam się. JA tylko podstawy umiem... :roll: Nie wiem czy nie lepiej:P Nie znam się. JA tylko podstawy umiem... :roll: Zrób tak: podczas dodawania linka wczytaj całość zawartości sterowanie_linki.php i przy okazji wywal początek switcha i dodaj do początku nowy link ;) Następnie do początku ciągu dodaj początek switcha i całość zapisz w pliku sterowanie_linki.php ;) Użytkownik .:DzIuDek:. ™ edytował ten post 16 lipiec 2006, 18:46 że co? o_0 :P że co? o_0 :P Procedura dodawania linka nowego ma wyglądać tak ,że podajesz plik do zainkludowania i nazwe działu przekazywaną w urlu czyli: 1. tworzysz funkcję pobierajacą te dwie zmienne 2. tworzysz odpowiedni ciąg znaków w stylu : 'case\''. $nazwa_dzialu_przekazywana_w_url.'\':include(\''.$nazwa_pliku.' \');break;'; 3. wczytujesz zawartośc pliku sterowanie_linki.php 4. za pomocą funkcji operujących na znakach np. str_replace zmieniasz poczatek switcha czyli '<?php switch($url){' na ''. 5. dodajesz do tego ciagu swój link... 6. dodajesz poczatek switcha do tego ciagu (czyli dodajesz to co wczesniej zamieniłeś) 7. zapisujesz całość w pliku sterowanie_linki.php Powinno działać ;) Użytkownik .:DzIuDek:. ™ edytował ten post 16 lipiec 2006, 18:57 Teraz to sie juz totalnie zamotałem :) :P które punkty z Twojego poprzedniego post'a dotyczą jakiego pliku? Teraz to sie juz totalnie zamotałem :) :P które punkty z Twojego poprzedniego post'a dotyczą jakiego pliku? Wszystkie punktu z mojego posta dotycza pliku add_link.php (czy jak on się tam nazywał -> ten co służy dodawaniu linków) w nim musisz utworzyć funkcję ,która będzie operowała na pliku sterowanie_linki.php (czyli tym w którym ma się znaleźć ten cały switch) ;) Dzięki za pomoc, ale chyba sobie z tym nie poradzę... będę dodawał linki "ręcznie" ;) Dzięki za pomoc, ale chyba sobie z tym nie poradzę... będę dodawał linki "ręcznie" ;) To ja Ci dam jeszcze jedną wskazówkę : <?php function zapis($zmienna) { $nazwapliku = 'plik.txt'; $trochetresci = $zmienna; if (is_writable($nazwapliku)) { if (!$uchwyt = fopen($nazwapliku, 'w')) { echo "Nie mogę otworzyć pliku ($nazwapliku)"; exit; } if (fwrite($uchwyt, $trochetresci) === FALSE) { echo "Nie mogę zapisać do pliku ($nazwapliku)"; exit; } echo "Sukces, zapisano ($trochetresci) do pliku ($nazwapliku)"; fclose($uchwyt); } else { echo "Plik $nazwapliku nie jest zapisywalny"; } } function odczyt() { $nazwa_pliku = "plik.txt"; $uchwyt = fopen($nazwa_pliku, "r"); $tresc = fread($uchwyt, filesize($nazwa_pliku)); fclose($uchwyt); echo $tresc; } ?> Użyj tych funkcji do odczytu i zapisu w pliku (zmień tylko ten plik.txt na nazwę pliku do edycji)... Jak dalej nie będziesz potrafił sklecić tego o czym mówię to pozostaje Ci rzeczywiście ręczne wklepywanie do pliku... Użytkownik .:DzIuDek:. ™ edytował ten post 16 lipiec 2006, 19:18 |
|||
Sitedesign by AltusUmbrae. |