Forum > Tematy dowolne > html - czytanie treści na stronie z pliku txt

Strona 1 z 1 1
skocz

Luc

  • Luc
  • wiadomość Użytkownik

  • 1147 wypowiedzi

Wysłane 2014-10-13 19:58

Czy jest sposób, by nie tworzyć nowej podstrony a po kliknięciu w link wyświetlał się tekst napisany w notatniku ? Jeśli tak to proszę o porady w tym temacie. Chodzi o to, by nie tworzyć za każdym razem nowej strony.

Zapraszam na moją prywatną stronę: www.robertmelon.eu

mysiauek

Wysłane 2014-10-13 20:31

pop-up ?

adir

  • adir
  • wiadomość Użytkownik

  • 974 wypowiedzi

Wysłane 2014-10-13 20:36

ajaxem (asynchronicznie w tle) możesz zaczytać treść pliku i następnie wyświetlić np. w DIV.
najprościej przy pomocy biblioteki jQuery lub podobnej.

Więcej info np.:
[LINK]


i5-13500, Gigabyte B760 GAMING X, MSI RTX 4060 GAMING X, Kingston FURY Renegade Black DDR4 32GB 3600MHz CL16, Kingston KC3000 2TB M.2, Spartan 5 max

Luc

  • Luc
  • wiadomość Użytkownik

  • 1147 wypowiedzi

Wysłane 2014-10-13 22:51

fajnie by było jakby ktoś po polsku napisał co i jak ? Sorry, no English

Zapraszam na moją prywatną stronę: www.robertmelon.eu

kowgli

  • kowgli
  • wiadomość Użytkownik

  • 4367 wypowiedzi

Wysłane 2014-10-13 23:04 , Edytowane 2014-10-13 23:06

Zupełnie ordynarne rozwiązanie - wrzuć pliki .txt na serwer i zrób do nich zwyczajnie linki <a href="plik1.txt" target="_blank">Plik 1</a>. Po kliknięciu otworzą się w nowym oknie (dzięki target="_blank"). 
Da się to oczywiście zrobić na milion sposóbów z czego pewnie większość lepiej od tego co proponuję wyżej, ale zakładam, że chodzi Ci po prostu o to, aby rozwiązac problem.

A tak btw - to od tłumaczenia masz translate.google.com (całe strony można wkleić) albo choćby Chrome ;)

adir

  • adir
  • wiadomość Użytkownik

  • 974 wypowiedzi

Wysłane 2014-10-13 23:32 , Edytowane 2014-10-13 23:46

nawet pobieżna znajomość angielskiego się przydaje. Żeby zrozumieć przykłady wystarczy minimalna znajomość języka lub poświęcenia kilku minut na przyjrzenie się przykładom i spróbowanie ich.
Można też skorzystać z wyszukiwarki wpisując hasła odpowiednie np. jquery load. lub wcześniej podstawy jquery.
Zapewne są setki dokumentów po polsku, nie to co kilkanaście lat temu z przed ery google , gdzie brakowało info po polsku, choć altavista i inne wyszukiwarki też nie były złe :)

Jeśli nie masz żadnej wiedzy na temat HTML i Javascript proponuję zacząć od podstaw, np. kursu HTML Pawła Wimmera.
[LINK]

Później poszukać dobry kurs Javascript i CSS, po polsku też coś znajdziesz.

Następnie warto zabrać się za czytanie o jQuery :)

Oraz zainteresować się  HTML 5.


Możesz też zerknąć na gotowy przykład: [LINK]
Aby przykład działał musisz:
1. Zrobić katalog pliki/
    i w nim umieścić 1.htm i 2.htm (z jakąś treścią przykładową)
2. uruchamiać przykład przez serwer WWW (może być lokalny), a nie normalnie odpalać htm w przeglądarce.

Powodzenia

i5-13500, Gigabyte B760 GAMING X, MSI RTX 4060 GAMING X, Kingston FURY Renegade Black DDR4 32GB 3600MHz CL16, Kingston KC3000 2TB M.2, Spartan 5 max

adir

  • adir
  • wiadomość Użytkownik

  • 974 wypowiedzi

Wysłane 2014-10-14 12:10

@Luc

problem opisałeś mało precyzyjnie - nie wiadomo o co chodzi :).
Może nie chcesz tego robić w Javascript / ajax (bez przeładowania całej strony).
wtedy może zainteresuj się PHP. zakładając że masz katalog pliki/  w nim 0.txt, 1.txt 2.txt etc. (z treścią podstron)
(nazwy mogę nie być liczbowe, ale trzeba pamiętać o dodatkowym zabezpieczeniu skryptu).

robisz sobie plik (w katalogu wyżej) np. test.php i w nim

Tutaj normalny HTML strony.
A tu miejsce gdzie wstawiamy tresc z plikow na podstawie zmiennej w parametrze id=xxx
<?php
$id = (int) $_GET['id'];
// zakładam, że 100 podstron będziesz miał od 0 do 100, jak mniej zmniejsz wartość 100 na inną :)
if ($id < 0 OR $id > 100) $id = 0;
$plik = 'pliki/' . $id . '.txt';
// dodatkowo możesz sprawdzić czy plik do wstawienia istnieje.
if (file_exists($plik))
{
readfile($plik);
}
else
echo 'nie mogę wczytać pliku o ID: ' . $id;
?>
Dalsza część HTMLa strony

teraz tak plik test.php możesz wywoływać z parametrem ?id=XXX  czyli
test.php?id=1
test.php?id=4
etc.

Dość prosto zmienić aby id mogło być tekstowe zamiast liczbowe. Jak doczytaj, poszukaj w sieci.
Nie ma tak łatwo ;]

Pamiętaj tylko o zabezpieczeniu np. usunięciu z $id ewentualnych .. , . , / oraz ewentualnie innych znaków specjalnych  i samodzielnemu dodaniu rozszerzenia pliku (.txt) i wywaleniu 2-ch pierwszych linii z w/w kodu php

Powodzenia. 

i5-13500, Gigabyte B760 GAMING X, MSI RTX 4060 GAMING X, Kingston FURY Renegade Black DDR4 32GB 3600MHz CL16, Kingston KC3000 2TB M.2, Spartan 5 max

Luc

  • Luc
  • wiadomość Użytkownik

  • 1147 wypowiedzi

Wysłane 2014-10-15 10:10

Muszę się z tym zapoznać. Co do tego, że temat opisałem zbyt mało precyzyjnie to nie wiem co mam jeszcze napisać. Chodzi mi o to, że na przykład aby nie tworzyć nowych pod stron, po kliknięciu w link na stronie wyświetla się dany tekst, który jest zapisany w notatniku. Może opisze to na przykładzie piłki nożnej. Załużmy, że mam stronę o jedenastu piłkarzach danej drużyny. Zamiast tworzyć dla każdego piłkarza nową pod stronę, chcę aby po kliknięciu w link, tekst ładował się z pliku txt, na jednej stronie.

Ps. Dawno już się stronami nie zajmowałem, a robię swoją prywatną. Ponadto trafiłem na taki problem - mam poniższy kod

<a target="_blank" href="images\korsyka.jpg"><img src="images\korsyka.jpg" alt="Monte Cinto 2706 m npm" border="0" width="45%" height="45%" align="right"/></a>

na kompie (offline) wyświetla zdjęcie, a online już nie i jest tylko tekst Monte Cinto ... . Gdzie tkwi błąd ? Sprawdziłem rozszerzenie zdjęcia i jest ono *.jpg (nie jpeg, nie JPG - tylko jpg). Za moich dawnych czasów to był błąd, który po wrzuceniu strony na serwer powodował, że nie wyświetlały się zdjęcia, ale nie wiem o co chodzi teraz.

Zapraszam na moją prywatną stronę: www.robertmelon.eu

adir

  • adir
  • wiadomość Użytkownik

  • 974 wypowiedzi

Wysłane 2014-10-15 11:14

@luc

To zrób to przez PHP podobnie jak opisałem i ładuj plik HTML/txt z opisem piłkarza na podstawie jego ID.
Później można też opis przerzucić do bazy danych, byłoby to wygodniejsze.


zmień w ścieżkach (href i src)  \ na /   duże i małe litery także mają znaczenie.
Może być też problem z uprawnieniami do pliku. 

Jeśli masz Firefoxa (na Chromie jest podobne oprogramowanie) to zainstaluj sobie dodatek Firebug
[LINK]

Ten dodatek pozwala na wiele ciekawych rzeczy: inspekcję kodu html (także css, js), zmianę w locie (widać od razu jak się strona zmienia). Ale najważniejsze dla Ciebie to Konsola (np. pokaże Ci błąd 404 albo inny w tych plikach).

Pozdrawiam.

i5-13500, Gigabyte B760 GAMING X, MSI RTX 4060 GAMING X, Kingston FURY Renegade Black DDR4 32GB 3600MHz CL16, Kingston KC3000 2TB M.2, Spartan 5 max

Luc

  • Luc
  • wiadomość Użytkownik

  • 1147 wypowiedzi

Wysłane 2014-10-15 11:53

na php się nie znam, ale coś pokombinuje.

co do zdjęcia to wielkie dzięki - okazało się, że zmiana "/" na "\" wszystko naprawiła. Ehhh

Zapraszam na moją prywatną stronę: www.robertmelon.eu
Strona 1 z 1 1
skocz

Kto jest online: 1 użytkowników, 256 gości

lami ,