![]() |
[PROBLEM] Formularz - Wersja do druku +- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl) +-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www) +--- Dział: Początkujący webmaster (https://www.webmastertalk.pl/forum-poczatkujacy-webmaster) +--- Wątek: [PROBLEM] Formularz (/thread-problem-formularz) |
[PROBLEM] Formularz - DAN!3L - 22-07-2012 Witam, otóż chciałbym napisać sobie formularz który będzie działał tak: Użytkownik w polu tekstowym wklei link do zippyshare np. http://www9.zippyshare.com/v/123456/file.html formularz pobierał by: 1 i 2: http://{1}.zippyshare.com/v/{2}/file.html następnie uzupełniał taki oto kod: Kod PHP: <script type="text/javascript">var zippywww="tutaj $1";var i tam by jeszcze było że pobiera cały ten link i tworzy obrazkowy link, ale z tym to już sobie dam radę, tylko z tym co opisałem mam problem, głównie z tym pobieraniem, nie wiem jak zrobić żeby pobierało to 1 i 2 , uzupełnianie kodu mam opanowane, przejrzałem bardzo dużo poradników, ale nie znalazłem odpowiedzi na to pytanie, jak to pobierać i uzupełniać tylko tym 1 i 2 ? Wiem że dla was jest to banalne, tak więc proszę o wytłumaczenie, lub cały gotowy kod, jeśli nie dało by rady zrealizować tego w PHP, to prosił bym o skrypt w JS. Z góry dzięki. RE: [PROBLEM] Formularz - camelrafal - 22-07-2012 w php skorzystaj z dirname oraz z basename otrzymasz katalog pliku oraz samą nazwę pliku jeżeli chcesz wyciągnąć poszczególne fragmenty adresu to skorzystaj z funkcji strpos(do namierzenia znaku) oraz substr(do skopiowania zawartosci) w javascript masz też funkcje search i substr działaj a gotowca tutaj nie dostaniesz raczej RE: [PROBLEM] Formularz - Pedro84 - 22-07-2012 Da radę: pathinfo() @camelrafal - jemu chodzi o pobieranie zmiennych ze ścieżki ![]() RE: [PROBLEM] Formularz - DAN!3L - 22-07-2012 Edit właściwie to początek mogę uciąć wpisując cyfre 7 zamiast "$a, strpos($a, "//")" ale co z resztą? Chyba żle się wyraziłem: Chce z pole pobrać do textarea 2 zmienne z linku np: http://www65.zippyshare.com/v/68123444/file.html http://www(65).zippyshare.com/v/(68123444)/file.html chce pobrać to co w nawiasie i nic więcej. RE: [PROBLEM] Formularz - camelrafal - 22-07-2012 musiałbyś sprawdzać czy wpisany link jest prawidłowy bo kod może ci się rozlecieć jeżeli ktoś coś źle zrobi lub link będzie się różnił (różni ludzie = różne działania) najlepiej sprawdzić poprawność adresu funkcją preg_match poszukaj w necie może znajdziesz jakiegoś gotowca no i możesz się zainteresować też funkcją parse_url aby rozbić adres na części składowe i operacje dokonywać tylko na tym elemencie który potrzebujesz zmniejszysz w ten sposób prawdopodobieństwo wystąpienia błędów może także ci się przydać funkcja explode która dzieli stringa na kawałki w miejscu wystąpienia danego znaku np '.' funkcja count liczy ile elementów jest w tablicy np po rozbiciu przez explode musisz zaznajomić się dobrze z tymi funkcjami (wiedzieć jak która z nich działa i co daje w rezultacie) wtedy będziesz wiedział co robić i kiedy jaką wykorzystać wystarczy wpisać w google którąś funkcje i otrzymujesz multum wyników, opisów, instrukcji a nawet przykładów a co do twojego kodu to widze tam tylko $aa=substr($link,-18,-10); co jest bez sensu bo negatywne wartości oznaczają że liczysz od końca stringa i na sztywno ustawiłeś ilość znaków i jeżeli (a na pewno) adres będzie innej długości to zwróci ci jakieś smieci i kod się rozleci w programowaniu musisz przewidywać różne możliwości kombinuj kombinuj aż ci się uda w ten sposób się uczysz PS. popraw coś w pierwszym poście w kodzie bo się strona rozjechała i ciężko się odpisuje wstaw gdzie nie gdzie jakiegoś entera i przerzuć część kodu do nasępnej lini bo jest za długa RE: [PROBLEM] Formularz - DAN!3L - 23-07-2012 No więc tak: Dodałem kod który sprawdza poprawność wpisywanego adresu: Kod PHP: <?php //KOD SPRAWDZAJĄCY POPRAWNOŚĆ $nr_www Aha teraz jest jedno pole gdzie wpisuje się sam adres, skorzystałem z funkcji EXPLODE jak radziłeś: Kod PHP: <?php $nr_www = substr($link, 10, -36); to tylko tymczasowo, dlaczego wartość ujemna? Otóż 10 omija mi "http://www" -36 licząć od tyłu wyrzuca zbędną część linku, od tyłu ponieważ wartość która występuje po www może być np 1, a w innym przypadku 55 , dlatego jest wartość ujemna, link z zippyshare zawsze ma tą samą długość więc to nie przeszkadza Dodałem też przez funkcje ECHO podgląd, ogólnie ten kod co teraz jest zacząłem pisać zupełnie od nowa, i powiem szczerze że jestem bardzo zadowolony z wyników, mimo tego że informatyki w szkole nie miałem, wszystkiego uczyłem się sam w domu ![]() Dzięki za pomoc. |