Autor Zpráva
nightrider
Profil
Pořád řeším stejný problém a to ten že se zápis nechce udržet dýl jak na jedný stránce. Session se zapíše,ale po přechodu na jinou stránku prostě zmizi.Zápis je testovanej a skutečně se provede. Všude na stránce samozřejmě mám vloženo (session_start).

Kde je tedy problém? Poradí mi někdo? Stránka k náhledu zde

<?php
if (isset($_POST['valuty']))
  $_SESSION['valut'] = $_POST['valuty'];
if (isset($_SESSION['valut']))
?>
<form action="" method="post">
<select name="valuty" onChange="this.form.submit();">
<?php
echo "	<option>-".$_SESSION["valut"]."-</option>\n";
$sql = 	mysql_query("SELECT * FROM valuty");
		while($valut = mysql_fetch_array($sql)) {
echo "	<option>".$valut["nazev"]."</option>\n";
 }

echo "</select></form>";
?>
SwimX
Profil
nightrider
tys tu moji úpravu, upravil a vymyslel si pěknou ptákovinu.

<?php
if (isset($_POST['valuty']))
  $_SESSION['valut'] = $_POST['valuty'];
if (isset($_SESSION['valut'])) // když je podmínka splněna a nemá {} tak se očakává jeden příkaz za ní. přesuň tudle podmínku ..
?>
<form action="" method="post">
<select name="valuty" onChange="this.form.submit();">
<?php
// sem -> aby se tadle možnost tiskla jenom pokud v té sessioně něco je 
  echo "    <option>-".$_SESSION["valut"]."-</option>\n";
$sql =     mysql_query("SELECT * FROM valuty");
        while($valut = mysql_fetch_array($sql)) {
echo "    <option>".$valut["nazev"]."</option>\n";
 }

echo "</select></form>";
?>
nightrider
Profil
nn, ten tvůj jsem testnul a choval se stejně.
hlava mi nebere > pokud přejdu čertvě na stránku a zadám měnu, tak se session drzi na jeden přechod alespon v IE a firefoxu
SwimX
Profil
nightrider
Napsal jsem si tohle:
<? session_start(); 

if (!isset($_GET['d']) || $_GET['d'] == "1")
  include "1.php"; // v něm mám akorát html: <h1>První</h1>
if ($_GET['d'] == "2")
  include "2.php"; // v něm mám akorát html: <h1>Druhý</h1>

if (isset($_GET['act']) && $_GET['act'] == "des")
  session_destroy();

if (isset($_POST['valuty']))
  $_SESSION['valut'] = $_POST['valuty'];
?>
<form action="" method="post">
<select name="valuty" onChange="this.form.submit();">
<?php
if (isset($_SESSION['valut']))
  echo "    <option>-".$_SESSION["valut"]."-</option>\n";
  echo "    <option>€</option>\n";
  echo "    <option>$</option>\n";
  echo "    <option>&</option>\n";
  echo "</select></form>";

echo "<a href=\"". ( !isset($_GET['d']) || $_GET['d'] == "1" :  "?d=1" ) ."\">Prvni str</a>
<a href=\"?d={$_GET['d']}&amp;act=des\">Destroy</a>";

?>

a funguje to jak má.
nightrider
Profil
Pokud se vymaže while, tak všechno funguje jak má, ale neví někdo jak to udělat aby option vypisoval výsledky s db a přitom fungoval?
// NEFUNKČNÍ
<?php session_start();
if (!isset($_GET['d']) || $_GET['d'] == "1")
if (isset($_GET['act']) && $_GET['act'] == "des")
  session_destroy();

if (isset($_POST['valuty']))
  $_SESSION['valut'] = $_POST['valuty'];

$sql_valut = mysql_query("SELECT * FROM valuty") or print("<center><div class=\"error\"><b>Došlo k chybě v dotazu:</b> ".$q. "" .mysql_error())."</div></center>";
?>
<form action="" method="post">
<select name="valuty" onChange="this.form.submit();">
<?php
if (isset($_SESSION['valut']))
	echo "	<option>-".$_SESSION["valut"]."-</option>\n";
	echo "	<option>€</option>\n";
	echo "	<option>$</option>\n";
	echo "	<option>&</option>\n";
while($valut = mysql_fetch_array($sql_valut)) {
	echo "	<option>".$valut["nazev"]."</option>\n";
 }
	echo "</select></form>";
?>


// FUNKČNÍ
<?php session_start();
if (!isset($_GET['d']) || $_GET['d'] == "1")
if (isset($_GET['act']) && $_GET['act'] == "des")
  session_destroy();

if (isset($_POST['valuty']))
  $_SESSION['valut'] = $_POST['valuty'];

$sql_valut = mysql_query("SELECT * FROM valuty") or print("<center><div class=\"error\"><b>Došlo k chybě v dotazu:</b> ".$q. "" .mysql_error())."</div></center>";
?>
<form action="" method="post">
<select name="valuty" onChange="this.form.submit();">
<?php
if (isset($_SESSION['valut']))
	echo "	<option>-".$_SESSION["valut"]."-</option>\n";
	echo "	<option>€</option>\n";
	echo "	<option>$</option>\n";
	echo "	<option>&</option>\n";
	echo "</select></form>";
?>
nightrider
Profil
Poradi mi tady nekdo? Zacina to vypadat ze tohle tema uz nikdo nevidi :-(
AM_
Profil
nightrider
Tomuhle se říká repost a spousta moderátorů ti téma pak smaže, a to už ho vážně nikdo neuvidí. Není to slušné, když ti nikdo neradí, asi to neví. Kde máš while výsledky a kde řádek 24? neumíš položit dotaz, to bude spíš příčina toho, že ti nikdo neporadí, než že téma odjelo dolů. Zmizí ti i počítač, nebo jenom monitor ze stolu? nebo ti zmizí všechna data z disku? není nad přesné vyjadřování.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0