« 1 2 »
Autor Zpráva
Monkeys
Profil *
Ako preniest Session do dalsej stranky?

mam formular na mnozstvo vybraneho tovaru:

PHP hod - formularu
echo '<form id="form" action="kosik.php" method="post">';
echo '<select name="mnozstvo">';
for($i=1; $i<=5; $i++){
echo ' <option value="'.$i.'">'.$i.'</option>';    
}
echo '</select>';
echo '<input name="odosli" type="submit" class=" tlacitko" value="Pridaj do košíku" />';

PHP kod na spracovanie
if (isset($_POST['odosli'])){
$mnozstvo = $_POST['mnozstvo'];
$_SESSION['mnozstvo'] = $mnozstvo;
}

Spracovanie na stranke kosik.php
echo '<p> Mnozstvo je <b> '.$_SESSION['mnozstvo'].'</b></p>';

Ale neako mi to neprenasa do dalsej stranky.
V hlavicke sablony mam hned prve session_start();
Neviem kde je problem

Dakujem
Taps
Profil
Monkeys:
Vypisuje se ti nějaká chyba ?
Monkeys
Profil *
Taps:
ano to som zabudol vypisat vypisuje to Undefined index: mnozstvo
Taps
Profil
Monkeys:
voláš na každé stránce session_start(); kde pracuješ s proměnnou $_SESSION ?
Monkeys
Profil *
Taps:
ano mam to ako sablonu na kazdej stranke hned prvy riadok je session_start();
Taps
Profil
Monkeys:
zkus toto
if ($_POST['odosli']){
$_SESSION['mnozstvo'] = $_POST['mnozstvo'];
}
Monkeys
Profil *
Taps:
stale mi to pise undefined index mnozstvo


ale ked si cez echo vypisem

echo $_POST['mnozstvo'];

tak to vypise hodnotu selectu ale nemozem to dostat do tej session.
Taps
Profil
Monkeys:
print_r($_SESSION);
$mnozstvo=$_POST['mnozstvo'];
if (isset($_SESSION['mnozstvo']){
$_SESSION['mnozstvo']=$mnozstvo;
}
print_r taky nic nevypíše ?
Monkeys
Profil *
Taps:

Vypisalo to toto:
Array ( [kosik] => Array ( [4] => 1 ) [mnozstvo] => )
Notice: Undefined index: mnozstvo in C:\wamp\www\eshop_ledky\ledky.php on line 20
Taps
Profil
Monkeys:
v kodu nevidím uzavření form
</form>
Monkeys
Profil *
Taps:
uzavrete to mam od zaciatku asi mi to vypadlo ked som to kopiroval sem.
Taps
Profil
Monkeys:
odkud pochází index 4 s hodnotou 1 ? Není možné že se ti přepisuje $_session['mnozstvo'] ?
Monkeys
Profil *
Taps:
hmm tak to nemam sajnu tiez nato pozeram kde sa zobral ten index 4

ale vypis HTML je dobre:

<select name="mnozstvo"> 
<option value="1">1</option> 
<option value="2">2</option>
 <option value="3">3</option> 
 <option value="4">4</option>
  <option value="5">5</option>
  </select>
Taps
Profil
Monkeys:
ozvi se mi na kontakt v profilu, problém bude zřejmě někde jinde
Monkeys
Profil *
Taps:

Este rozmyslam nemoze to byt tym ze ked kliknem na tlacitko odoslat tak este raz prebehne cyklus for a tam vzniknu tie problemy?

M.
Taps
Profil
v tom skriptu na zpracování máš jen níže uvedené ?
if (isset($_POST['odosli'])){
$mnozstvo = $_POST['mnozstvo'];
$_SESSION['mnozstvo'] = $mnozstvo;
}
TomasJ
Profil
Monkeys:
Cyklus 2x neprobíhá. PHP se parsuje jen 1x a to při načítání stránky.

Teď jak se Taps zeptal, tak mám doplňující otázku: I tam máš session_start();?

Nemáš v .htaccess zapnuté register_globals?
Monkeys
Profil *
Taps:

nad tym kodom mam este toto:

if (is_numeric($_GET['ledka_id'])){
    require_once ('****.php');    
    $dotaz = **************************************************** =".$_GET['ledka_id']."";
    $vysledok = mysql_query($dotaz);
    $riadok = mysql_fetch_array ($vysledok, MYSQL_ASSOC);
    mysql_close();
    
    
$titul_stranky = 'Ledky a usporky - '.$riadok['nazov'].'';
include_once ('sablony/hlavicka.html');

a potom ten kod ...

TomasJ:
No mam ho aj tam


TomasJ:
Nemáš v .htaccess zapnuté register_globals?
Iné skripty co mam mi so $_SESSION funguju.

Toto je neaky bludny kruh :(

M.
Someone
Profil
Proč takto:
if (isset($_POST['odosli'])){
$mnozstvo = $_POST['mnozstvo'];
$_SESSION['mnozstvo'] = $mnozstvo;
}
?
Proč ne rovnou takto:
if (isset($_POST['odosli'])) {
$_SESSION['mnozstvo'] = $_POST['mnozstvo'];
}
TomasJ
Profil
Monkeys:
Zkus přejmenovat proměnnou v $_POST['mnozstvo'] ... tj ve formuláři ji přejmenuj jinak, a pak i ve skriptu a nastav $_SESSION['mnozstvo'] = $_POST['novy_nazev_pro_promennou_mnozstvi'];

Someone:
To je teď detail.
Someone
Profil
Chyba musí být někde jinde, udělal jsem si tři soubory
test.php
test2.php
test3.php
test.php obsahuje:
  echo '<form id="form" action="test2.php" method="post">';
  echo '<select name="mnozstvo">';
  for($i=1; $i<=5; $i++){
    echo ' <option value="'.$i.'">'.$i.'</option>';    
  }
  echo '</select>';
  echo '<input name="odosli" type="submit" class=" tlacitko" value="Pridaj do košíku" />';
test2.php
session_start();
if (isset($_POST['mnozstvo'])) {
  $_SESSION['mnozstvo'] = $_POST['mnozstvo'];
}
A test3.php
session_start();
echo 'Množstvo je '.$_SESSION['mnozstvo'];
A bez problému.
TomasJ
Profil
Someone:
To víme, že to takto funguje v pohodě, ale snažíme se na chybu přijít, takže je lepší vyzkoušet cokoliv.
Monkeys
Profil *
Someone:

Neviem ci to je chyba ale ja mam test.php a test2.php vramci jedneho dokumentu.

K.
TomasJ
Profil
Monkeys:
Zkoušel jsi co jsem psal ve [#20]?
Someone
Profil
Monkeys:
Neviem ci to je chyba ale ja mam test.php a test2.php vramci jedneho dokumentu.
Chyba to rozhodně není. Pokud můžeš, bylo by dobré, když bys uvedl i jiný kód, který tam máš. Očividně to tím, co jsi napsal v [#1] není.
Monkeys
Profil *
TomasJ:
Ano ale bez vysledku.


Tu je cely kod

<?php
if (is_numeric($_GET['ledka_id'])){
    require_once ('****.php');    
    $dotaz = "***********************************************************=".$_GET['ledka_id']."";
    $vysledok = mysql_query($dotaz);
    $riadok = mysql_fetch_array ($vysledok, MYSQL_ASSOC);
    mysql_close();
    
    
$titul_stranky = 'Ledky a usporky - '.$riadok['nazov'].'';
include_once ('sablony/hlavicka.html');

if (isset($_POST['odosli'])) {
$_SESSION['mnozstvo'] = $_POST['kolko'];
}


echo '<div class="prave_menu">
<h3>Led žiarovka: '.$riadok['nazov'].'</h3>';
if ($subor = getimagesize("prijate/male/ ".$riadok['maly_obr']."")){
echo '<div class="ponuka"><div class="box"><img src="prijate/male/ '.$riadok['maly_obr'].'" '.$subor[3].' title"'.$riadok['nazov'].'"/></div><p>Cena: <strong>'.$riadok['cena'].' €</strong></p>';
}
echo '<div class="pridatDoKosiku"><span>Množstvo:</span><form id="form" action="kosik.php" method="post">';
echo '<select name="kolko">';
for($i=1; $i<=5; $i++){
echo ' <option value="'.$i.'">'.$i.'</option>';    
}
echo '</select>';
echo '<input name="odosli" type="submit" class=" tlacitko" value="Pridaj do košíku" />';
echo '</form></div>';
echo '</div>';

echo '<div class=" popis_produktu"><p><strong>'.$riadok['nazov'].'</strong>, '.$riadok['popis'].'</p></div>';
echo '<div class="produkt">';

// rozdelenie farby svetla na pole
$farba_led = $riadok['farba'];
$farba_led = explode(",", $farba_led);
$pocet_prvkov = count($farba_led);
//zistenie ci je ledka na sklade
$skladom = $riadok['skladom'];
if ($skladom == 'A'){
    $skladom= '<p style="color:green;"><strong>Na sklade</strong></p>';
}else if($skladom == 'N'){
    $skladom= '<p style="color:red;"><strong>Vypredaná</strong></p>';
}

switch ($pocet_prvkov){
case 1:    
echo '<table>';
echo '<tr><th colspan="2">Žiarovka: ' .$riadok['nazov'].' '.$farba_led[0].'</th></tr>';
echo '<tr ><td>Napätie</td><td>' .$riadok['napatie'].'</td></tr>';
echo '<tr ><td>Výkon</td><td>' .$riadok['vykon'].'</td></tr>';
echo '<tr><td>Farba svetla</td><td>' .$farba_led[0].'</td></tr>';
echo '<tr><td>Svetelný tok</td><td>' .$riadok['studena'].'</td></tr>';
echo '<tr><td>Priemer</td><td>' .$riadok['priemer'].'</td></tr>';
echo '<tr><td>Dĺžka</td><td>' .$riadok['dlzka'].'</td></tr>';
echo '<tr><td>Životnosť</td><td>' .$riadok['zivotnost'].'</td></tr>';
echo '<tr><td>Objímka</td><td>' .$riadok['objimka'].'</td></tr>';
echo '<tr><td>Uhol svietenia</td><td>' .$riadok['uhol'].'</td></tr>';
echo '<tr><td>Počet led</td><td>' .$riadok['pocet_led'].'</td></tr>';
echo '<tr><td>Na sklade</td><td>' .$skladom.'</td></tr>';
echo '</table>';
break;

case 2:    
echo '<table>';
echo '<tr><th colspan="2">Žiarovka: ' .$riadok['nazov'].' '.$farba_led[0].'</th><th colspan="2">Žiarovka: ' .$riadok['nazov'].' '.$farba_led[1].'</th></tr>';
echo '<tr ><td>Napätie</td><td>' .$riadok['napatie'].'</td><td>Napätie</td><td>' .$riadok['napatie'].'</td></tr>';
echo '<tr ><td>Výkon</td><td>' .$riadok['vykon'].'</td><td>Výkon</td><td>' .$riadok['vykon'].'</td></tr>';
echo '<tr><td>Farba svetla</td><td>' .$farba_led[0].'</td><td>Farba svetla</td><td>' .$farba_led[1].'</td></tr>';
echo '<tr><td>Svetelný tok</td><td>' .$riadok['tepla'].'</td><td>Svetelný tok</td><td>' .$riadok['studena'].'</td></tr>';
echo '<tr><td>Priemer</td><td>' .$riadok['priemer'].'</td><td>Priemer</td><td>' .$riadok['priemer'].'</td></tr>';
echo '<tr><td>Dĺžka</td><td>' .$riadok['dlzka'].'</td><td>Dĺžka</td><td>' .$riadok['dlzka'].'</td></tr>';
echo '<tr><td>Životnosť</td><td>' .$riadok['zivotnost'].'</td><td>Životnosť</td><td>' .$riadok['zivotnost'].'</td></tr>';
echo '<tr><td>Objímka</td><td>' .$riadok['objimka'].'</td><td>Objímka</td><td>' .$riadok['objimka'].'</td></tr>';
echo '<tr><td>Uhol svietenia</td><td>' .$riadok['uhol'].'</td><td>Uhol svietenia</td><td>' .$riadok['uhol'].'</td></tr>';
echo '<tr><td>Počet led</td><td>' .$riadok['pocet_led'].'</td><td>Počet led</td><td>' .$riadok['pocet_led'].'</td></tr>';
echo '<tr><td>Na sklade</td><td>' .$skladom.'</td><td>Na sklade</td><td>' .$skladom.'</td></tr>';
echo '</table>';
break;

case 3:    
echo '<table>';
echo '<tr><th colspan="2">Žiarovka: ' .$riadok['nazov'].' '.$farba_led[0].'</th><th colspan="2">Žiarovka: ' .$riadok['nazov'].' '.$farba_led[1].'</th><th colspan="2">Žiarovka: ' .$riadok['nazov'].' '.$farba_led[2].'</th></tr>';
echo '<tr ><td>Napätie</td><td>' .$riadok['napatie'].'</td><td>Napätie</td><td>' .$riadok['napatie'].'</td><td>Napätie</td><td>' .$riadok['napatie'].'</td></tr>';
echo '<tr ><td>Výkon</td><td>' .$riadok['vykon'].'</td><td>Výkon</td><td>' .$riadok['vykon'].'</td><td>Výkon</td><td>' .$riadok['vykon'].'</td></tr>';
echo '<tr><td>Farba svetla</td><td>' .$farba_led[0].'</td><td>Farba svetla</td><td>' .$farba_led[1].'</td><td>Farba svetla</td><td>' .$farba_led[2].'</td></tr>';
echo '<tr><td>Svetelný tok</td><td>' .$riadok['tepla'].'</td><td>Svetelný tok</td><td>' .$riadok['studena'].'</td><td>Svetelný tok</td><td>' .$riadok['studena'].'</td></tr>';
echo '<tr><td>Priemer</td><td>' .$riadok['priemer'].'</td><td>Priemer</td><td>' .$riadok['priemer'].'</td><td>Priemer</td><td>' .$riadok['priemer'].'</td></tr>';
echo '<tr><td>Dĺžka</td><td>' .$riadok['dlzka'].'</td><td>Dĺžka</td><td>' .$riadok['dlzka'].'</td><td>Dĺžka</td><td>' .$riadok['dlzka'].'</td></tr>';
echo '<tr><td>Životnosť</td><td>' .$riadok['zivotnost'].'</td><td>Životnosť</td><td>' .$riadok['zivotnost'].'</td><td>Životnosť</td><td>' .$riadok['zivotnost'].'</td></tr>';
echo '<tr><td>Objímka</td><td>' .$riadok['objimka'].'</td><td>Objímka</td><td>' .$riadok['objimka'].'</td><td>Objímka</td><td>' .$riadok['objimka'].'</td></tr>';
echo '<tr><td>Uhol svietenia</td><td>' .$riadok['uhol'].'</td><td>Uhol svietenia</td><td>' .$riadok['uhol'].'</td><td>Uhol svietenia</td><td>' .$riadok['uhol'].'</td></tr>';
echo '<tr><td>Počet led</td><td>' .$riadok['pocet_led'].'</td><td>Počet led</td><td>' .$riadok['pocet_led'].'</td><td>Počet led</td><td>' .$riadok['pocet_led'].'</td></tr>';
echo '<tr><td>Na sklade</td><td>' .$skladom.'</td><td>Na sklade</td><td>' .$skladom.'</td><td>Na sklade</td><td>' .$skladom.'</td></tr>';
echo '</table>';
break;
}



echo '</div></div>';

include_once ('sablony/patka.html');
}
?>
TomasJ
Profil
Monkeys:
Asi jsem slepý, ale nevidím zde session_start().
Monkeys
Profil *
TomasJ:
ako som uz pisal session_start() je v sablone
include_once ('sablony/hlavicka.html');

ukazka

<?php
 session_start();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo $titul_stranky  ?></title>
<link href="container.css" rel="stylesheet" type="text/css" />
....
TomasJ
Profil
Monkeys:
V HTML souboru nepůjde PHP.
Řešení: Přejmenuj jej na hlavicka.php.

Zkus dát session_start() ještě před to include_once('hlavicka...');


<?php
session_start();

if (is_numeric($_GET['ledka_id'])){
    require_once ('****.php');    
    $dotaz = "***********************************************************=".$_GET['ledka_id']."";
    $vysledok = mysql_query($dotaz);
    $riadok = mysql_fetch_array ($vysledok, MYSQL_ASSOC);
    mysql_close();
    
    
$titul_stranky = 'Ledky a usporky - '.$riadok['nazov'].'';
include_once ('sablony/hlavicka.html'); //Z tohoto souboru session_start() odstraň
 
if (isset($_POST['odosli'])) {
$_SESSION['mnozstvo'] = $_POST['kolko'];
}
//...

Takže to dej na začátek, jak jsem dal v kódu a pojede ti to (mělo by).
Monkeys
Profil *
TomasJ, Someone, Taps:

Dakujem vam pekne za ochotu a cas uz to je vyriesene super velka vdaka.
TomasJ - osobna vdaka

M.
« 1 2 »

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: