ugrás a tartalomhoz

PHP JavaScript interakció

Sovereign · 2007. Jan. 6. (Szo), 10.11
Lehetséges megoldani valahogy hogy egy JavaScript változó értékét átadjam egy PHP változónak? Valamiért úgy érzem, hogy nem de... jobb megkérdezni!

A választ előre is köszönöm!
 
1

form

winston · 2007. Jan. 6. (Szo), 10.36
javascripttel egy form elem (szerintem a te helyzetedben legjobb hogy ha egy hidden elem) értékét megváltoztatod, vagy megadod, és elküldés után a php-vel szépen átveszed.
2

javascript -> php

rrd · 2007. Jan. 6. (Szo), 10.40
sok módszer van, de mind igényli, hogy az oldal újratöltődjön, mert csak akkor kapja meg a PHP a beállított változó értékét. Lehet cookie, post, get, stb.
3

valahogy így

Sovereign · 2007. Jan. 6. (Szo), 11.03
A java változója felvesz egy értéket. Azt átadom egy hidden elem értékének majd
mondjuk postolom a formot és kiveszem az adatot.
Kösz!
4

mi lehet a baj?

Sovereign · 2007. Jan. 6. (Szo), 11.37
<html>
<head>
<title>Untitled web-page</title>
<script language="JavaScript">
function proba(mezo,mezo2)
{
mezo2 = mezo;
}
</script>
</head>
<body>
<form method="post" action="proba.php" name="form" onsubmit="proba(document.form.mezo1.value,document.form.mezo2.value)">
Mező 1:<input type="text" value="" name="mezo1">
Mező 2:<input type="text" value="" name="mezo2">
<input type="submit" name="submit" value="Submit">
</form>
<?php print 'mező 1:'.$_POST[mezo1].'<br>'; print 'mező 2'.$_POST[mezo2].'<br>'; ?>
</body>
</html>

A baj ezzel az, hogy a mezo2 nem veszi fel a mezo1 értékét.
ma a függvényben kiírom a nevét, hogy document.form.mezo2.value = mezo akkor viszont működik.
Mit rontok el?
5

JSON

error · 2007. Jan. 6. (Szo), 13.01
Ha egy bonyolultabb változóról van szó, csináld JSON-nal. A változót JSON string-gé konvertálod (valami.toJSONString()), hidden mezőben vagy AJAX-szal átküldöd, ott pedig vissza alakítod (PHP 5.2-ben már alap a json_decode). Így még a tipusa is átmegy :)

Sok sikert...
6

válasz

Sovereign · 2007. Jan. 6. (Szo), 14.10
Ha saját magának küldöm el akkor is így kell? A példában - kimaradt mert nem figyeltem - saját magának küldöm el.