Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 4 odgovora
  • 2.911 pregleda

Najnovija ↓

Citanje promenljive iz sesije 01.04.2013. u 15:51 · pre 165 meseci #1
Zasto nece da radi sledece:

PraviSesiju.php

....
<form action="CitajSesiju.php" method="post">
<?php session_start(); ?>
<button onclick="<?php $_SESSION['kateg_izbor']="AUTO"; ?> ">Biram kola</button>
<button onclick="<?php $_SESSION['kateg_izbor']="KUCE"; ?> ">Biram kuce</button>
<button onclick="<?php $_SESSION['kateg_izbor']="POSAO"; ?> ">Trazim posao</button>
</form>
....

CitajSesiju.php

<body>
<?php
session_start();
echo "Vasa izabrana sesija oglasa je :". $_SESSION['kateg_izbor']. "</br>";
?>
</body>
</html>
Re: Citanje promenljive iz sesije 01.04.2013. u 15:59 · pre 165 meseci #2
sesije se cuvaju na serveru, onclick se izvrsava na klijent strani.
U tvom primeru, ti prvo setujes vrednost sesije pa ga onda posaljes klijentu.

Treba ti na onclick poziv ka serveru i tamo setovanje sesije
Potpis
http://norway.dakipro.com/
Re: Citanje promenljive iz sesije 03.04.2013. u 01:22 · pre 165 meseci #4
Prvi fajl:

Code:
<?php session_start(); ?>

<html>
<head>


</head>

<body>
<?php if(isset($_SESSION['kateg_izbor'])) echo $_SESSION['kateg_izbor'];  ?>
<form action="CitajSesiju.php" method="post">

<button name="sesija" value="AUTO">Biram kola</button>
<button name="sesija"  value="KUCE">Biram kuce</button>
<button  name="sesija" value="POSAO">Trazim posao</button>
</form>
</body>
</html>


Kako rece dakipro, prvo saljes izabranu vrednost serveru. Gore je dodata linija kojom proveravas da li je sesija setovana, kada refresujes tu PraviSesiju.php stranu, trebalo bi da se ispise vrednost izabrane opcije...

Drugi fajl:

Code:

<html >
<head>

</head>

<body>
<?php
session_start();
if(isset($_POST['sesija'])) {
$_SESSION['kateg_izbor']=$_POST['sesija'];
    
echo "Vasa izabrana sesija oglasa je :". $_SESSION['kateg_izbor']. "</br>";
}
?>
</body>
</html>
Re: Citanje promenljive iz sesije 04.04.2013. u 22:37 · pre 165 meseci #5
Dakle, imaš kod

Code:
<button onclick="<?php $_SESSION['kateg_izbor']="AUTO"; ?> ">Biram kola</button>
<button onclick="<?php $_SESSION['kateg_izbor']="KUCE"; ?> ">Biram kuce</button>
<button onclick="<?php $_SESSION['kateg_izbor']="POSAO"; ?> ">Trazim posao</button>


što je html kod koji je već istigao do klijentovog browsera i tu se izvršio pre nego što je klijent bilo šta kliknuo. Browser je verovatno ovo shvatio kao onclick="", što znači "prilikom klika nemoj da uradiš apsolutno ništa". Da bi se ovo izvelo potrebno je da kada korisnik klikne na dugme izvrši http zahtev ka serveru gde će se postaviti odgovarajuća sesija. Ovde u igru ulazii moćni AJAX.

koraci su sledeći:
Kreirati javascript funkciju koja će poslati pozadinski HTTP zahtev ka PHP skripti koja će postaviti sesiju
recimo da se funkcija zove set_kateg_izbor(int izbor). Ona kreira HTTP zahtev ka skriptu na adresi www.domian.com/lib/set_kateg_izbor.php. Takođe šalje i parametar kroz taj zahtev putem POST ili GET metoda
Imamo na primer konvenciju
0 - AUTO
1 - KUCE
2 - POSAO

Za realizaciju ajax funkcije prouči AJAX na googlu, a možeš i da pogledaš jquery, što je jednostavnije.

Fajl set_kateg_izbor.php
Code:

<?php
session_start();

switch( $_POST['kateg_izbor'] ){
   case 0: $_SESSION['kateg_izbor']="AUTO";
   break;

   case 1: $_SESSION['kateg_izbor']="KUCE";
   break;

   case 2: $_SESSION['kateg_izbor']="POSAO";
   break;   
}
?>


javaScript funkcija set_kateg_izbor() se poziva prilikom klika
Code:
<button onclick="set_kateg_izbor(0)">Biram kola</button>
<button onclick="set_kateg_izbor(1) ">Biram kuce</button>
<button onclick="set_kateg_izbor(2) ">Trazim posao</button>


Kada je ovo urađeno, neće se na stranici ništa ptomeniti dok se ne osveži . To se može iyvesti tako što se na kraju JavaScript funkcije ubaci document.location.reload(true). Sad, ako već imamo potrebu za osvežavanjem stranice bolje je zaobići komplet ovu AJAX stvar i koristiti formu. Postoji gomila mogućnosti, samo treba malo zastati i isplanirati pre samog kodiranja kako bi se dobilo što elegantnije rešenje
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme