Wątek przeniesiony 2023-08-15 11:24 z Webmastering przez Riddle.

Tylko pliki .php są znajdowane przez serwer

0

Mam dostep do FTP, wgrałem do odpowiedniego folderu swój plik .php z kodem. W tym kodzie jest odnośnik do pliku .html jednak nie czyta go a są w tym samym miejscu obok siebie, wyskakuje komunikat 404. Jak to ogarnąć? jeśli robie osobno pliki .CSS i .js to też ich nie czyta musze wszystko w .php ogarnąć
dzięki za pomoc

Wytlumaczy mi ktoś jak to ogarnąć na podstawie domeny i serwera w home.pl?

0

co i jak robisz, pokaż jakieś screenshoty, strukturę folderów, url który wpisujesz w przeglądarce. Co znaczy "nie czyta go"

0
obscurity napisał(a):

co i jak robisz, pokaż jakieś screenshoty, strukturę folderów, url który wpisujesz w przeglądarce. Co znaczy "nie czyta go"

podam wieczorem jak wroce z pracy, nie czyta tzn daje przycisk "wyslij" na stronie i on powinien przkierowywac do pliku np main.html i na stronie wyskakuje informacja 404 not found. Jeśli w głównym pliku index.php nie dodam kodu z .CSS to też pliku odzielnego mi nie znajduje

1

Wrzuć jak te pliki z poziomu PHP załączasz. Może problem jest w ścieżkach.
Druga sprawa to uprawnienia i ustawienia dostępu w .htaccess
Plik typu CSS musi mieć uprawnienia odpowiednie żeby WebServer go odczytał i mógł od razu przekazać przeglądarce. Nie wiem czy masz hosting, czy inną usługę ale w hostingu w panelu jest możliwość ustawienia uprawnień.
https://pomoc.home.pl/baza-wiedzy/zmiana-atrybutow-chmod-dla-plikow-i-folderow-za-pomoca-webftp
Zobacz co masz poustawiane.

5

Pytanie - jeśli oczywiste, to wybacz, ale kilka razy już się taki problem pojawił: Czy wszystko masz małymi literami?

Tobie moze to działać na windows, który nie rozróżnia wielkości liter, a potem wrzucasz na serwer, gdzie masz linuksa i dla niego JakisPlik.html oraz jakisplik.html albo jakisplik.HTML to są trzy osobne rzeczy.

0

Wszystko malymi literami tu jest ok, zaraz podeślę screeny

Tak wyglądają na głównej "stronie" foldery , mam zainstalowanego wordpressa , pliki np .php wrzucam do public_html/autoinstalator/wordpressplugins1 i jeśli tam usunę index.php wgram swój jest wszystko tak jak trzeba na mojej stronie , jendak jeśli w tym pliku idex.php odniosę się do np main.html czy też style.css strona ich nie widzi 404 not found

1.png

2

??? nie wiem co to jest autoinstalator. I potem wpisujesz w przeglądarce url https://xxx/autoinstalator/wordpressplugins1/main.html ?
To że index.php z jakiegoś autoinstalator/wordpressplugins1 się wykonuje to pewnie zasługa tego że są includowane z innego miejsca. Normalnie pliki powinny leżeć bezpośrednio w public_html

0

po usunięciu wszystkiego , gdy dodam index.php do public_html mam komunikat
Not Found
The requested URL was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

1

Ten Autosinatalator to jakiś plugin był? Jeśli tak, to czy jest sens tego używać skoro tworzy probelmy?
Ogólnie to jeśli działał Ci index.php w innym katalogu to najpewniej w .htaccess miałeś też jakieś przekierowanie. Najlepiej odszukaj ten plik i zobacz co w nim jest lub wklej tutaj.

0

wiesz co ogólnie to korzystam z jak pisałem z home.pl i tam z panelu zainstałowałem wordpressa , jest zakładka "instalacje". Teraz w public_html nie ma nic oprócz mojego pliku index.php , ale tak jak pisałem 404 wyskakuje. Pliku .htaccess nie mogę wgl zlokalizować.

4

@creator new: Jeżeli instalowałeś Wordpressa z poziomu autoinstalatora to Twoja strona (w sensie pliki) będą w katalogu autoinstalator (i nie będzie wskazywało na public_html). Tam jest .htaccess, który "będzie blokował" bezpośrednie dostępy do plików. Nie wiem jak chcesz cokolwiek zrobić z tym plikiem main.html (gdzie on fizycznie się znajduje) ale jeżeli chcesz aby ścieżka w formularzu trafiała na stronę obsługiwaną przez wordpressa to tak się tego nie robi.

Jeżeli chcesz mieć skrypt "odseparowany" od Wordpressa to:
-> albo wrzucasz go do jakiegoś katalogu nie związanego z Wordpressem i tam ustawiasz odpowiednio .htaccess
-> albo wywalasz wordpressa i ustawiasz swoją domenę na public_html i tam wrzucasz swoje pliki
-> albo tworzysz subdomenę, ustawiasz ją na konkretny katalog i wówczas w tym skrypcie wrzucasz bezpośredni URL do pliku włącznie z subdomeną, przykładowo https://subdomain.wordpress.com/main.html

0

@leonpro778: dzięki , wywaliłem wordpressa i index już sie elegancko ładuje. Tylko jak przekierować przycisk do innego pliku wywala ciągle 404. w index.php mam taki kod

Przegląd plik main.html jest pod index.php
1

@creator new: Pokaż kod bo nic nie widać :)

0
<div id="preview" style="display: none;">
<a href="main.html">Przegląd</a>

teraz jest ok ? :)

0

@creator new: A plik index.php jest w tym samym katalogu co main.html ?

0

Ok motasz z jakimś htmlem tutaj niepotrzebnie, po prostu wpisz url w przeglądarce do main.html i postaraj się żeby zadziałało
Wygląda że plik jest albo w nieprawidłowym miejscu (nadal nie pokazałeś całej struktury folderów i nie pokazałeś gdzie dajesz ten plik) albo gdzieś masz jakieś reguły które nie dają dostępu do main.html
Najlepiej to zaoraj wszystko i zacznij od zera, ten "autoinstalator" coś mógł pokonfigurować pod wordpressa

0
leonpro778 napisał(a):

@creator new: A plik index.php jest w tym samym katalogu co main.html ?

tak

0
obscurity napisał(a):

Ok motasz z jakimś htmlem tutaj niepotrzebnie, po prostu wpisz url w przeglądarce do main.html i postaraj się żeby zadziałało
Wygląda że plik jest albo w nieprawidłowym miejscu (nadal nie pokazałeś całej struktury folderów i nie pokazałeś gdzie dajesz ten plik) albo gdzieś masz jakieś reguły które nie dają dostępu do main.html
Najlepiej to zaoraj wszystko i zacznij od zera, ten "autoinstalator" coś mógł pokonfigurować pod wordpressa

no właśnie strona ma być prosta, jest formularz w ktorym wpisuje xxx dane daje wyślij i powinny te informacje wysyłać się do odzielnego pliku. I na stronie głownej jest przycisk "przegląd" i tam w formie tabeli chce żeby były te dane wysłane z formularza i tyle. Laik jestem wybaczcie ;)

0

@creator new: A możesz pokazać co oprócz tych dwóch plików masz jeszcze w tym katalogu?

0
leonpro778 napisał(a):

@creator new: A możesz pokazać co oprócz tych dwóch plików masz jeszcze w tym katalogu?

pewnie , tylko te zostały i nie moge usunąć..image

0

to jest poza public_html, pokaż public_html lub wsadź main.html do public_html. Dlaczego ten index.php się wykonuje mimo że jest poza nie wiem, ale pewnie wewnątrz masz inny index.php który go odpala

0

@creator new: Dokładnie, pokaż co masz w public_html. Zobacz jeszcze jak masz skonfigurowaną domenę

0

ok wrzuciłem pliki do public_html i mam tam tylko index.php oraz main.html , gdy wpisuje xxx.pl/main.html to działa wyświetla , a z pliku php gdy daje przekierowanie po kliknięciu przycisku "przegląd" nadal 404 może coś źle mam w kodzie wpisane ;) wrzucę cały tam będzie dużo zmian , głownie zobaczcie czy odniesienie do pliku main.html jest odpowiednie

0
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <style>
        body {
            font-family: Arial, sans-serif;
            background-color: #eceff1;
            height: 100vh;
            margin: 0;
        }

        .center {
            height: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
        }

        button {
            margin-top: 10px;
            background-color: #4285F4;
            color: #ffffff;
            padding: 10px 20px;
            border: none;
            border-radius: 5px;
            cursor: pointer;
            transition: background-color 0.2s;
        }

        button:hover {
            background-color: #357ABD;
        }

        input[type="text"], input[type="password"], input[type="number"], select {
            padding: 8px;
            margin-top: 5px;
            border: 1px solid #ccc;
            border-radius: 4px;
        }

        input[type="checkbox"] {
            margin-top: 10px;
        }
    </style>
    <title>Formularz</title>
</head>
<body>
    
        <div id="login" style="display: block;">
            Login: <input type="text" id="username"><br>
            Hasło: <input type="password" id="password"><br>
            <input type="checkbox"> Zapamiętaj hasło<br>
            <button onclick="login()">Zaloguj</button>
        </div>
        <div id="chooseCompany" style="display: none;">
            Wybierz Firmę: 
            <select id="company">
                <option value="tømrermester">tømrermester</option>
            </select>
            <button onclick="nextPage('chooseCompany', 'rate')">Dalej</button>
        </div>
        <div id="rate" style="display: none;">
            Stawka godzinowa w DKK: <input type="number" id="hourlyRate">
            <button onclick="nextPage('rate', 'workType')">Dalej</button>
        </div>
        <div id="workType" style="display: none;">
            <form method="post">
                <select id="type" name="type" onchange="displayWorkFields()">
                    <option value="none">-- Wybierz --</option>
                    <option value="godzinowka">Godzinówka</option>
                    <option value="pakiet">Pakiet</option>
                    <option value="metry">Metry</option>
                </select>
                <div id="godzinowkaFields" style="display: none;">
                    Ilość godzin: <input type="number" id="hours"><br>
                    Rodzaj wykonywanej pracy: <input type="text" id="workDescription"><br>
                    Miejsce wykonywania: <input type="text" id="location">
                    <button type="button" onclick="calculateGodzinowka()">Wyślij</button>
                </div>
                <div id="pakietFields" style="display: none;">
                    Ile DKK za pakiet: <input type="number" id="pricePerPackage"><br>
                    Ile pakietów zrobionych: <input type="number" id="packagesCompleted"><br>
                    Ile osób robiło: <input type="number" id="peopleForPackage"><br>
                    Miejsce i nr mieszkania: <input type="text" id="flatDetailsPakiet">
                    <button type="button" onclick="calculatePakiet()">Wyślij</button>
                </div>
                <div id="metryFields" style="display: none;">
                    Ile metrów²: <input type="number" id="meters"><br>
                    Ile za m² w DKK: <input type="number" id="pricePerMeter"><br>
                    Ile osób robiło: <input type="number" id="peopleForMetry"><br>
                    Miejsce i nr mieszkania: <input type="text" id="flatDetailsMetry">
                    <button type="button" onclick="calculateMetry()">Wyślij</button>
                </div>
                <button type="submit">Wyślij</button>
            </form>
        </div>
        <div id="confirmation" style="display: none;">
            Godziny wysłane! Do zobaczenia ponownie.<br>
            Suma wysłanych dzisiejszych godzin to: <span id="totalHours"><?php echo isset($totalHours) ? number_format($totalHours, 2) : '0.00'; ?>h</span>
        </div>
        <!-- Przycisk "Przegląd" -->
        <div class="center">
<div id="preview" style="display: none;">
    <a href="public_html/main.html">Przegląd</a>
</div>
    </div>
    <script>
        function login() {
            const username = document.getElementById("username").value;
            const password = document.getElementById("password").value;

            if (username === "111" && password === "111") {
                nextPage("login", "chooseCompany");
            } else {
                alert("Nieprawidłowy login lub hasło!");
            }
        }

        function nextPage(current, next) {
            document.getElementById(current).style.display = "none";
            document.getElementById(next).style.display = "block";
        }

        function displayWorkFields() {
            let type = document.getElementById("type").value;
            let fieldsToHide = ["godzinowkaFields", "pakietFields", "metryFields"];
            
            for (let id of fieldsToHide) {
                document.getElementById(id).style.display = "none";
            }
            
            if (type !== "none") {
                document.getElementById(type + "Fields").style.display = "block";
            }
        }

        function calculateGodzinowka() {
            //  kod obliczeń dla godzinówki

            // Po obliczeniach, pokaż komunikat potwierdzający
            document.getElementById("workType").style.display = "none";
            document.getElementById("confirmation").style.display = "block";

            //  obliczenia
            const totalHours = parseFloat(document.getElementById("hours").value);
            document.getElementById("totalHours").textContent = totalHours.toFixed(2) + "h";
        }

        function calculatePakiet() {
            const pricePerPackage = parseFloat(document.getElementById("pricePerPackage").value);
            const packagesCompleted = parseFloat(document.getElementById("packagesCompleted").value);
            const peopleForPackage = parseFloat
1

@creator new: A czemu masz tam public_html w href?

0

Spróbuj bez katalogu, na niego już kierują inne ustawienia

<a href="main.html">Przegląd</a>
1

skoro działa xxx.pl/main.html to skąd ci przyszło do głowy żeby usera kierować do xxx.pl/public_html/main.html?

0

@obscurity: Ja tutaj obawiam się, że plik main.html może być i w root path jak i w public_html i nadal nie wiem na co kierować będzie domena :)

@creator new: Usuń z tego głównego katalogu pliki index.php oraz main.html i pracuj tylko na public_html

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