Totul intr-o singura pagina

Aici postaţi orice este legat de tehnologiile "client side". HTML, HTML5, XHTML, CSS, CSS3, XML, Standarde
Manual JS: http://www.phpromania.net/jsmanual/index.html

Moderatori: eyecon, Moderatori

Avatar utilizator
eu2200
Junior Member
Mesaje: 31
Membru din: Joi Apr 07, 2005 3:56 pm
Localitate: Langa monitor (Brasov)

Totul intr-o singura pagina

Mesajde eu2200 » Mar Iun 07, 2005 8:18 am

Am vazut ca se poate ca un site sa ruleze totul intr-o singura pagina, adica in pagina de start (ex. www.exemplu.ceva). Stie cineva cum se poate face toata aceasta chestie.
Am incercat sa fac totul intr-un div pe care il updatez cu ceea ce se numeste XMLHttpRequest insa apar probleme la afisarea meniului, adica acesta nu apare, sa nu mai spun de faptul ca nu reusesc sa execut script din meniu.
Cea de-a doua varianta ar fi cu frame, asta ar insemna ca am unul pe partea cu meniu iar un al doilea mai jos care afiseaza intodeauna altceva, problema este ca meniul se deschide si se ascunde in frame. :?: :arrow:


"The question that is never answered is far less dangerous than the answer that is never questioned." - Unknown

Avatar utilizator
Birkoff
Senior Member
Mesaje: 6380
Membru din: Joi Mar 18, 2004 2:34 pm
Localitate: Bucuresti
Contact:

Mesajde Birkoff » Mar Iun 07, 2005 9:30 am

Faci o pagina index.php care contine template-ul si meniurile iar acolo unde vrei sa se afiseze continutul folosesti functia include.
Paginile cu continut vor contine doar un div sau un tabel in care ai textul care vrei sa iti apara pe ecran (sau faci script php care sa iti preia continutul din bd si sa il afiseze in pagina...)
Aceste pagini cu continut sa zicem ca se numeste p1.php, p2.php etc.
Faci un meniu care sa acceseze paginile respective astfel:
Meniu
pagina 1 => (la a href pui index.php?pag=p1)
pagina 2 => (index.php?pag=p2)

Tu le incluzi in index.php astfel:
$pagina = $_GET['pag'].".php";
include($pagina);

Sper ca te-am lamurit...
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.

Avatar utilizator
eu2200
Junior Member
Mesaje: 31
Membru din: Joi Apr 07, 2005 3:56 pm
Localitate: Langa monitor (Brasov)

Mesajde eu2200 » Mar Iun 07, 2005 9:44 am

Birkoff asa am in momentul de fata dar la adresa apare asa:

Cod: Selectaţi tot

index.php?pag=dir1/dir2/dir3/p2.php

iar eu incercam sa obtin in adress bar doar index.php, desi trimiteam pagina care va fi inclusa. Idee este ca nu are rost sa se vada toate chestiile astea.

10x anyway :idea:
"The question that is never answered is far less dangerous than the answer that is never questioned." - Unknown

Avatar utilizator
Birkoff
Senior Member
Mesaje: 6380
Membru din: Joi Mar 18, 2004 2:34 pm
Localitate: Bucuresti
Contact:

Mesajde Birkoff » Mar Iun 07, 2005 11:27 am

daca toate paginile sunt in acelasi director poti face asa
in link va apare index.php?pag=p2
iar tu o incarci asa
$p = $_GET['pag'];
$pagina = 'dir1/dir2/dir3/'.$p.'.php';
include ($pagina);

Bine chestia de mai sus merge daca le ai pe toate intr-un director, altfel tre sa mai trimiti un parametru prin get ca sa sti de unde le iei
de exemplu
index.php?p=p1&loc=1

daca loc=1 atunci calea e 'dir1/dir2/etc'
daca loc=2 atunci calea este 'dir2/dir3/etc...'

sper sa intelegi ideea

Inca ceva... e mai bine sa poti accesa pagina respectiva printr-un parametru trimis prin get pentru ca daca cineva vrea sa faca referire la una din paginile tale sa dea link-ul exact altfel daca tu ai doar index.php in adresa indiferent de pagina, si cineva vrea sa faca referire la el pe site catre una din paginile tale nu o sa reuseasca... (am patit chestia asta cand am vrut sa fac referire catre un articol existent pe un site la mine in pagina dar nu se potrivea linkul...)
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.

Avatar utilizator
eu2200
Junior Member
Mesaje: 31
Membru din: Joi Apr 07, 2005 3:56 pm
Localitate: Langa monitor (Brasov)

Mesajde eu2200 » Mar Iun 07, 2005 12:40 pm

Iti multumesc pentru variante, dar nu este ceea ce cautam, ceea ce fac eu este o baza de date in cadrul unei firme, ma intereseaza ca in Adress Bar sa nu apara mai mult decat HOME ori unde ar fi utilizatorul.
Sa nu apara nici variabilele pe care le trimit eu pentru a include ceva.
El nu va putea sa acceseze direct asa cum spuneai tu, ca are adresa pe care o introduce direct, pentru ca peste tot se va lovi de Login in cazul in care nu s-a logat.
Nu cunosc o pagina anume insa stiu ca sunt site-uri in care oriunde te trimite meniul, ori un link, tot ceea ce vezi in adress bar este www.pagina.ceva.
Asta vreau eu sa obtin.
"The question that is never answered is far less dangerous than the answer that is never questioned." - Unknown

Avatar utilizator
Birkoff
Senior Member
Mesaje: 6380
Membru din: Joi Mar 18, 2004 2:34 pm
Localitate: Bucuresti
Contact:

Mesajde Birkoff » Mar Iun 07, 2005 1:35 pm

Hmmm, am inteles cam ce vrei tu, adica indiferent de ce se trimite prin get in adress bar sa apara doar index.php...
din cate stiu asta se face prin configurarea lui httpd.conf (serverul de web appache) si tine de MOD_REWRITE despre care nu stiu mare lucru (inca)
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.

Avatar utilizator
eu2200
Junior Member
Mesaje: 31
Membru din: Joi Apr 07, 2005 3:56 pm
Localitate: Langa monitor (Brasov)

Mesajde eu2200 » Mar Iun 07, 2005 1:59 pm

Da este o varianta.
Nu cred ca duci lipsa de link-uri pe tema asta, dar uite de unde am ales sa citesc eu:
http://www.sitepoint.com/article/guide-url-rewriting

Bafta :!:
"The question that is never answered is far less dangerous than the answer that is never questioned." - Unknown

whooper
Senior Member
Mesaje: 866
Membru din: Mar Apr 05, 2005 9:58 pm
Localitate: Toronto ON

Mesajde whooper » Mar Iun 07, 2005 7:59 pm

incearca sa trimiti variabilele alea cu metoda POST in loc de GET. Daca nu-ti plac form-urile cu hidden fields, incearca un HTTPRequest cu care schimbi o variabila de sesiune care contine link-ul target.

index.php va trebui sa stie sa citeasca toate variabilele si sa construiasca paginile pe baza cerintelor.

http://www.modernmethod.com/sajax/examples.phtml
Join The Forums - Time Well Wasted!

Avatar utilizator
arond
Senior Member
Mesaje: 580
Membru din: Joi Mar 11, 2004 2:00 am
Localitate: 127.0.0.1
Contact:

Mesajde arond » Mar Iun 07, 2005 10:49 pm

URL rewriting e altceva, nu prea are legatura cu ce (pare) ca iti doresti.

In alta ordine de idei, care e ratiunea intregului balamuc ? URL-urile s-au inventat tocmai ca sa deosebesti o pagina de alta, nu vad nici un motiv pentru care asta ar trebuie sa se schimbe.

Iar vizavi de POST, e o idee oarecum proasta. Ia da un refresh la o pagina careia i s-a POST-at ceva, si o sa intelegi de ce.

Numa' bune.
People ask for criticism, but they only want praise.
W. Somerset Maugham (1874 - 1965).

http://www.arond-design.ro

Avatar utilizator
eu2200
Junior Member
Mesaje: 31
Membru din: Joi Apr 07, 2005 3:56 pm
Localitate: Langa monitor (Brasov)

Mesajde eu2200 » Mie Iun 08, 2005 8:00 am

Nu stiu daca are rost sa ne gandim la ratiunea intregului balamuc pentru ca in fond orice poate fi privit la un moment dat ca fiind un moft, insa de dragul programarii as dori sa stiu cum se face.
Pe langa asta am mentionat mai sus faptul ca acesta este o baza de date in cadrul unei firme, asa ca nu am nevoie sa deosebesc o pagina de alta, ci sa ascund ceea ce trimit, pentru ca nu este treaba utilizatoruli in ce pagina se afla.

Sper sa nu fi suparat pe nimeni cu acest mesaj. Bafta
"The question that is never answered is far less dangerous than the answer that is never questioned." - Unknown

Avatar utilizator
arond
Senior Member
Mesaje: 580
Membru din: Joi Mar 11, 2004 2:00 am
Localitate: 127.0.0.1
Contact:

Mesajde arond » Mie Iun 08, 2005 9:08 am

...pentru ca nu este treaba utilizatoruli in ce pagina se afla...

Zau ? :)

Nu e vorba de suparare, dar mi se pare oarecum absurd sa ascunzi informatiile necesare afisarii unei pagini.

Ia, sa vedem ce se intampla daca utilizatorul isi pune un bookmark, la o pagina interesanta.. daca nu folosesti cookies, bookmark-ul va fi irelevant. Acelasi lucru se va intampla si daca un utilizator trimite un bookmark altuia, prin e-mail. Sau cum faci sa iti faci publicitate la o anume pagina (landing page)... etc

Ideea este ca ce vrei sa faci tu nu va face decat sa incurce utilizatorul.

Daca vrei sa scapi de variabilele GET, metoda este URL rewriting, de genul: /mercedes/550d.html => /product.php?mfg=mercedes&model=550d. Asta are sens, dar nu e ce vrei tu (din ce ai descris pana acum).

Cateva idei despre motivele pentru care exista URL-uri/si pentru care nu ar trebui sa se schimbe: http://www.w3.org/Provider/Style/URI.html

Numa' bune.
People ask for criticism, but they only want praise.

W. Somerset Maugham (1874 - 1965).



http://www.arond-design.ro

Avatar utilizator
eu2200
Junior Member
Mesaje: 31
Membru din: Joi Apr 07, 2005 3:56 pm
Localitate: Langa monitor (Brasov)

Mesajde eu2200 » Mie Iun 08, 2005 10:04 am

arond ceea ce contruiesc eu este o baza de date in cadrul unei firme ce va functiona intr-un LAN de cca. 15 statii, nu este accesibila pe net si chiar de ar fii, cam peste tot se intra cu login (fiind un program de gestiune, sau macar se vrea a fii).

A lamuri daca este sau nu necesara o astfel de actiune..., nu este tema acestui subiect.
Daca reusesc sa gasesc o solutie... mi-ar folosii si mie, si oricarui tip ce doreste sa faca chestia asta si se gandeste sa citeasca acest subiect.

10x
"The question that is never answered is far less dangerous than the answer that is never questioned." - Unknown

whooper
Senior Member
Mesaje: 866
Membru din: Mar Apr 05, 2005 9:58 pm
Localitate: Toronto ON

Mesajde whooper » Sâm Iun 11, 2005 4:40 am

eu2200, poti sa pui undeva online partea cu httpRequest pt teste ? Daca nu live, macar o arhiva, sau copy-paste.

Eu am facut pana acum 3 aplicatii maricele care ruleaza similar (intranet only), dar folosesc metoda POST (chiar daca nu-i place lui arond) si utilizatorii nu simt nevoia sa apese butonul refresh si a confirma pentru a reposta datele in nici unul din ecranele de lucru. Asta din cauza ca am grija la inserturi identice in baza de date cand imi apasa userii refresh ..

Recunosc acum, este mai elegant sa nu confirmi nimic in plus fata de ce trebuie. M-ar interesa sa fac un test cu httpRequest, si cand am timp, sa le ofer alora versiuni mai elegante ale aplicatiilor respective (e.g. Production Data Logging, Equipment Maintenance si Production Reporting).
Join The Forums - Time Well Wasted!

maximaker
New Member
Mesaje: 2
Membru din: Vin Iun 17, 2005 11:22 am
Localitate: Iasi
Contact:

Mesajde maximaker » Vin Iun 17, 2005 11:38 am

Ziua buna !

Si pe mine ma intereseaza aceeasi cestiune: modificare adress-bar-ului

I-am expus problemele clientului, care vrea neaparat sa-i apara in bara de adrese DOAR adresa, nimic mai mult.

Well, gasisem o sf solutie, care nu prea ma satisface deoarece am de lucru in alte zone ... clasicul iframe. Ma gandeam k bara de adresa poate fi modificata cu un javascript, continutul ei sa fie preluat in mod normal de parserul PHP sau in fine , de server ... nu prea PHP-uiesc

Daca se gaseste careva cu o solutie concreta ... sunt si eu de-asemenea recunoscator.

mc anticipat !
Max

Avatar utilizator
REEAit
PHPRomania Supporter
Mesaje: 8
Membru din: Vin Sep 20, 2002 12:32 am
Localitate: Torino, Italia
Contact:

Mesajde REEAit » Vin Iul 29, 2005 11:49 pm

Atentie ca paginile cu variabile nu prea obtin Page Rank de la Google ;)

mai bine solutia...
...Paginile cu continut vor contine doar un div sau un tabel in care ai textul care vrei sa iti apara pe ecran...



ps OT:
nu gasesc "Quote" pe pagina 'principala' cu raspunsuri! ...poate ca sunt obosit! 8O :D


Înapoi la “HTML/JavaScript/CSS”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 12 vizitatori