logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[PHP][JAVASCRIPT][HTML] - Przesylanie danych z php do javascript

mistrztz 24 Cze 2014 01:30 2361 1
REKLAMA
  • #1 13736157
    mistrztz
    Poziom 1  
    Posty: 1
    Witam,
    jestem w trakcie tworzenia strony www opartej na php oraz JavaScript.
    Zrobilem skrypt rejestracji oraz logowania i dodalem do niego pokazujace sie errory w JavaScript kiedy wpisze sie cos blednego zanim skrypt zostaie wykonany (np. Dozwolona ilosc znakow od 3 do 20).
    Teraz kolej na walidacje wrowadzonych danych do skryptu (np. czy uzytkownik juz istnieje) i natrafilem na problem, ktory przerasta moje umiejetnosci programowania w JavaScript.
    Jak to wyglada w teori:
    Po kliknieciu w button logowania wykonuje sie skrypt (sprawdza czy jestesmy polaczeni z baza danych, sprawdza czy uzytkownik jest zarejestrowany oraz czy pola zostaly poprawnie wypelnione).
    Nastepnie jezeli dla przykladu formularz nie zostal wypelniony wykonuje dany warunek:

    Kod: PHP
    Zaloguj się, aby zobaczyć kod


    Teraz chcialbym aby w zmiennej $login_error zamiast tekstu byla wykonana dana funkcja z JavaScript...problem polega na tym ze:

    1. Nie mam pojecia jak taka funkcje JavaScript wywolac w php.
    2. Mam juz gotowa funkcje JavaScript, ktora wyswietla blad skonstruowany juz przez JavaScript a wywolanie bledu to:

    Kod: text
    Zaloguj się, aby zobaczyć kod


    Jak widzimy w polu input jest funkcja dla JavaScript, ktora wyswietla sie kiedy warunek nie jest spelniony.
    Jak to wyglada po stronie JavaScript kiedy funkcja ostaje aktywowana:

    Kod: Javascript
    Zaloguj się, aby zobaczyć kod



    Pozniej funkcja zwraca sie do zalaczonych plikow .js, ktore dodaja temu wszystkiemu "ruchomosc" oraz budowe wrac z wygladem.

    Moje pytanie brzmi:
    Funkcja poprawnosci wypelnionych formularzy jest aktywowana z momentem klikniecia na "input"...jak wywolac taka sama funkcje w skrypcie php i dopisac ja do zmiennej $login_error po niespelnionym warunku tak aby w html-u w miejscu "echo $loginerror;" wywolac jego "zadanie" i zmusic pliki "includowane" .js do zmontowania komunikatu?

    Plik index.html oraz index.php w calosci:
    Kod: text
    Zaloguj się, aby zobaczyć kod




    Kod: PHP
    Zaloguj się, aby zobaczyć kod








    * Bylbym bardzo wdzieczny za pomoc w rozwiazaniu tego problemu - siedze nad tym od kilku godzin (stale probuje cos nowego/innego) lecz niestety nic nie udaje mi sie wykombinowac.
    * Jezeli istnieje juz taki temat z rozwiazaniem, ktore pomoze rowniez mi to przepraszam i prosze o link/i.
    *Przepraszam za wszelkie popelnione bledy (nie biorac pod uwage polskich znakow) - mieszkam od kilku lat poza granicami Polski :)

    Dobrej nocy zycze i pozdrawiam.[/code]
  • REKLAMA
  • #2 13736295
    Dżyszla
    Poziom 42  
    Posty: 7075
    Pomógł: 1095
    Ocena: 225
    JS i PHP to zupełnie odmienne technologie i podejście. PHP wykonuje się na serwerze, a JS po stronie klienta. Stąd istnieją tylko dwa rozwiązania:
    1. To PHP generuje nową stronę w taki sposób, aby uzyskać pożądany efekt (np. ze wstawką wywołującą wskazany kod po załadowaniu strony).
    2. AJAX + JSON (opcjonalnie), czyli komunikacja JS z serwerem przez HTTP (serwerem także w rozumieniu PHP, czyli wywołanie skryptu, który zwróci odpowiednie dane, które to JS zinterpretuje i zareaguje we właściwy sposób. Tutaj wysłanie formularza nie spowoduje przeładowania strony.
REKLAMA