Salutare..
De ceva vreme, am o nelamurire legata de variabilele $_POST si $_GET !
Daca utilizam metoda method="get" intr-un formular, ne apar informatiile adaugate, in casuta de url
Exemplu: site.tld/formular.php?ceva=ceva etc..
Daca utilizam metoda method="post" intr-un formular, nu mai apar informatiile!
Exemplu: site.tld/formular.php
Nelamurirea mea este urmatoarea:
Cum as putea folosi variabila $_POST , in asa fel incat sa imi arate informatiile adaugate in formular..
Ma intereseaza ca atunci cand cineva introduce niste informatii in formular, sa i se ofere si link-ul catre o pagina care afiseaza acele informatii..
Prin metoda GET merge, insa folosind POST, nu stiu cum sa ofer acele informatii..
Ideea este urmatoarea:
Cineva adauga ceva intr-un formular..
Apasa pe butonul de trimitere, iar acestuia ii sunt oferite informatiile adaugate in formular, pe o alta pagina php!
Acesta trimite link-ul paginii respective altor persoane, care la randul lor vor trimite link-ul paginii respective altor persoane..
Ma poate lamuri cineva in legatura cu aceasta problema?
Va multumesc anticipat!
Claudiu
Afisare link utilizand "$_POST"
Moderatori: Moderatori, Start Moderator
Re: Afisare link utilizand "$_POST"
Cod: Selectaţi tot
<form method="post" action="afisare_date_formular.php">
<input type="text" name="text_input">
<input type="submit" name="click" value="Click">
</form>
si afisare_date_formular.php
Cod: Selectaţi tot
if(isset($_POST['click'])) {
echo $_POST['text_input'];
}
cred ca asta vrei...
Re: Afisare link utilizand "$_POST"
Da King! In mare parte, cam asa ceva!
Insa ma intereseaza sa si pot trimite link-ul acelei pagini, altei persoane!
In situatia de mai sus, nu am cum sa trimit..
Tin sa precizez ca mai multe persoane vor folosi acel formular, deci va trebuii atribuit cate un ID fiecarei pagini..
Asta nu stiu eu sa fac
Eu iti multumesc pentru implicare!
Insa ma intereseaza sa si pot trimite link-ul acelei pagini, altei persoane!
In situatia de mai sus, nu am cum sa trimit..
Tin sa precizez ca mai multe persoane vor folosi acel formular, deci va trebuii atribuit cate un ID fiecarei pagini..
Asta nu stiu eu sa fac
Eu iti multumesc pentru implicare!
-
- PHPRomania Supporter
- Mesaje: 18
- Membru din: Vin Iun 29, 2012 3:22 pm
Re: Afisare link utilizand "$_POST"
Datele trimise prin POST nu sunt vizibile in URL si sunt de "unica folosinta". Dupa refresh se pierd (unele browsere cer utilizatorului sa le retrimita). Ce vrei tu este ceva de genul formularelor de cautare de pe forumuri. Trimiti datele prin POST si primesti un id unic prin GET. Pentru treaba asta, ai nevoie de o baza de date, unde sa pastrezi datele POST si id-ul GET. Cand cineva intra pe o pagina cu id-ul, in loc sa preiei datele POST din $_POST, le preiei din baza de date.
Re: Afisare link utilizand "$_POST"
double-bit scrie:Datele trimise prin POST nu sunt vizibile in URL si sunt de "unica folosinta". Dupa refresh se pierd (unele browsere cer utilizatorului sa le retrimita). Ce vrei tu este ceva de genul formularelor de cautare de pe forumuri. Trimiti datele prin POST si primesti un id unic prin GET. Pentru treaba asta, ai nevoie de o baza de date, unde sa pastrezi datele POST si id-ul GET. Cand cineva intra pe o pagina cu id-ul, in loc sa preiei datele POST din $_POST, le preiei din baza de date.
Am inteles.. Speram sa nu folosesc o baza de date, insa ma simt nevoit sa fac asta!
Credeam ca exista vreo solutie..
Va multumesc tuturor..
O zi buna
Re: Afisare link utilizand "$_POST"
Mai exista o solutie care iti da exact ceea ce vrei tu,
Practic asa faci un POST din FORM, acesta este descompus in elemente si se creeaza un link pe care il serveste. E adevarat ca header("Location: $link"); apeleaza link-ul prin GET insa acesta contine variabilele trimise initial prin $_POST
Cod: Selectaţi tot
if ( isset($_POST) && is_array($_POST) && count($_POST) > 0 )
{
$link = "destinatie.php?";
foreach ( array_keys($_POST) as $var)
{
$link .= $var . "=" . $_POST[$var];
}
$link = substr($link,0,strlen($link)-1);
header("Location: $link");
}
else
{
.... codul pentru FORM
}
Practic asa faci un POST din FORM, acesta este descompus in elemente si se creeaza un link pe care il serveste. E adevarat ca header("Location: $link"); apeleaza link-ul prin GET insa acesta contine variabilele trimise initial prin $_POST
- vectorialpx
- Senior Member
- Mesaje: 4832
- Membru din: Mar Mar 01, 2005 9:48 am
- Localitate: Bucuresti
- Contact:
Re: Afisare link utilizand "$_POST"
Ditzy scrie:Salutare..
De ceva vreme, am o nelamurire legata de variabilele $_POST si $_GET !
Daca utilizam metoda method="get" intr-un formular, ne apar informatiile adaugate, in casuta de url
Exemplu: site.tld/formular.php?ceva=ceva etc..
Daca utilizam metoda method="post" intr-un formular, nu mai apar informatiile!
Exemplu: site.tld/formular.php
Nelamurirea mea este urmatoarea:
Cum as putea folosi variabila $_POST , in asa fel incat sa imi arate informatiile adaugate in formular..
Ma intereseaza ca atunci cand cineva introduce niste informatii in formular, sa i se ofere si link-ul catre o pagina care afiseaza acele informatii..
Prin metoda GET merge, insa folosind POST, nu stiu cum sa ofer acele informatii..
Ideea este urmatoarea:
Cineva adauga ceva intr-un formular..
Apasa pe butonul de trimitere, iar acestuia ii sunt oferite informatiile adaugate in formular, pe o alta pagina php!
Acesta trimite link-ul paginii respective altor persoane, care la randul lor vor trimite link-ul paginii respective altor persoane..
Ma poate lamuri cineva in legatura cu aceasta problema?
Va multumesc anticipat!
Claudiu
Iit trebuie o baza de date, cu un tabel, care retine textele si un identificator, pe principiul articolelelor.
Un exemplu de tabel:
Cod: Selectaţi tot
articole
--------
id
key
titile
content
stamp
ip
iduser
La insert, faci adaugarea in baza de date a acelui articol,
- o cheie unica, de exemplu uniqid() sau md5(SALT . microtime(true))
- un titlu (sper ca ai unul, asa ar fi frumos)
- contentul
- data curenta
- IP-ul celui care a adaugat (pentru tine, statistic)
- un id de user, in caz ca ai o metoda de autentificare
link-ul va arata astfel:
www.site.com/?articol=asd798asdjio
unde asd798asdjio este cheia unica.
Faci o interogare si, iei continutul.
Atentie la XSS si MySql injection.
Re: Afisare link utilizand "$_POST"
Va multumesc tuturor pentru raspuns..
Voi aplica metoda cu baza de date..
Cu stima, Claudiu
Voi aplica metoda cu baza de date..
Cu stima, Claudiu
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 120 vizitatori