Stránka: 1 z 1
| [ Príspevkov: 16 ] | |
Autor | Správa |
---|
Registrovaný: 06.09.07 Prihlásený: 21.03.24 Príspevky: 263 Témy: 62 | 62 |
Ahojte vsetci, snazim sa naucit pracu s polom tak som sa royhodol urobit uplne jednoduchy nakupny kosik cez session. povedzme nejake dva produkty mam ulozene v db krore vypisem na index spolu s input text mnozstvo a hidden ID a submit. co by som chcel aby to spravilo ... ked kliknem na submit odosle sa poziadavka s ID a mnozstvom a chcem abz sa zapisala do registrovaneho $_Session pola a ked kliknem na dasli do toho pola sa to dolozi atd. viete mi nejako poradit ?
Kód: if($_POST['add_kosik']) { $IDprodukty = $_POST['IDprodukty']; $mnozstvo = $_POST['mnozstvo']; $kosik = array("IDprodukty" => "$IDprodukty", "mnozstvo" => "$mnozstvo"); }
echo "KOSIK:<br />"; echo "Produkt: ".$kosik['IDprodukty']."<br />"; echo "Mnozstvo: ".$kosik['mnozstvo']."";
toto mi vypise co ma ale neuchova ...
//zmeneny nazov temy (stenley)
|
|
Registrovaný: 26.12.06 Prihlásený: 16.11.19 Príspevky: 3971 Témy: 181 | 181 Bydlisko: Nitra / Bra... |
vsak to nezapisujes do session, tak ako ti to ma uchovat?
_________________ Sorry za prelkepy |
|
Registrovaný: 06.09.07 Prihlásený: 21.03.24 Príspevky: 263 Témy: 62 | 62 |
jj viem, ale neviem ako to zapisat do session ... :-(
|
|
Registrovaný: 26.12.06 Prihlásený: 16.11.19 Príspevky: 3971 Témy: 181 | 181 Bydlisko: Nitra / Bra... |
na zaciatok suboru Kód: session_start(); a potom Kód: $_SESSION['kosik'] = $Kosik;
potom v subore volas ako klasicku premennu $_SESSION['kosik']
_________________ Sorry za prelkepy |
|
Registrovaný: 06.09.07 Prihlásený: 21.03.24 Príspevky: 263 Témy: 62 | 62 |
myslis takto ?
Kód: <?php session_start();
if($_POST['add_kosik']) { $IDprodukty = $_POST['IDprodukty']; $mnozstvo = $_POST['mnozstvo']; $_SESSION['kosik'] = $kosik; $kosik = array("IDprodukty" => "$IDprodukty", "mnozstvo" => "$mnozstvo"); }
echo "KOSIK:<br />"; echo "Produkt: ".$kosik['IDprodukty']."<br />"; echo "Mnozstvo: ".$kosik['mnozstvo'].""; ?>
toto mi tiez neuchovava ... akonahle kliknem na nieco strati sa to.
|
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 | 51 Bydlisko: Bratislava |
lebo ty to do session vkladas skor, ako ta premenna obsahuje nejake data
prehod si tieto dva riadku v tvojom kode:
Kód: $_SESSION['kosik'] = $kosik; $kosik = array("IDprodukty" => "$IDprodukty", "mnozstvo" => "$mnozstvo");
podla toho, ako si to spravil, budes moct mat v kosiku len jeden produkt
skus sa inspirovat tymto: http://www.pcforum.sk/post-vp456286.html#456286
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 29.10.08 Prihlásený: 30.07.12 Príspevky: 933 Témy: 2 | 2 |
a keby to zlucil do jedneho riadku ?
Kód: $_SESSION['kosik'] = array("IDprodukty" => "$IDprodukty", "mnozstvo" => "$mnozstvo");
|
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 | 51 Bydlisko: Bratislava |
aj to je moznost...
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 06.09.07 Prihlásený: 21.03.24 Príspevky: 263 Témy: 62 | 62 |
Aha, ale jeden produkt nic neriesi ... tu inspiraciu som uz pozeral ale to je kvazi hotove riesenie ... a to je na mna moc, a skopirovat a nepochopit je mi zbytocne ... skor by som to chcel nejako pomaly spravit.
teda aby mi do toho pola ukladalo viac IDciek musim uz asi polie odosielat ze ?
Kód: echo "<table border=1>"; $spoj_produkty = MySQL_Query("SELECT * FROM $tbsetup_produkty"); $count = MySQL_Num_Rows($spoj_produkty); while ($r = MySQL_Fetch_Array($spoj_produkty)) { $IDprodukty = $r['IDprodukty']; echo "<tr><td>Produkt ID: ".$r['IDprodukty'].""; echo "</td><td>".$r['produkty_nazov'].""; echo "</td><td><form action='index.php?stranka=katalog' method='POST'>"; echo "<input type='text' name='mnozstvo' size='2'>"; echo "<input type='hidden' name='count' value='$count'>"; echo "<input type='hidden' name='IDprodukty[]' value='$IDprodukty'>"; echo "<input type='submit' name='add_kosik' title='Pridaj do kosika'>"; echo "</form></td></tr>"; } echo "</table>";
|
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 | 51 Bydlisko: Bratislava |
hidden input count tam mas na co? takisto hidden input IDprodukty[] nemusi byt pole, pretoze budes, v tvojom pripade, pridavat len 1 produkt...
teraz je dolezite, aby si zabezpecil to, ze budes moct pridavat viacero druhov produktov - to by si mohol zabezpecit tym, ze pole $_SESSION['kosik'] bude mat ako indexy idcka produktov a hodnota bude pole s udajmi, ktore potrebujes mat uchovane (zvolene mnozstvo, jednotkova cena, celkova cena a pod)... pri pridavani budes musiet kontrolovat, ci sa dany produkt uz nahodou nenachadza v session - ak ano, jednoducho updatnes mnozstvo (pripadne aj cenu), inak pridas novy prvok...
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 06.09.07 Prihlásený: 21.03.24 Príspevky: 263 Témy: 62 | 62 |
Mne zatial nefunguje ani to uchovavanie jedneho nie to este viac produktov a nemam ani paru ako urobim ...
|
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 | 51 Bydlisko: Bratislava |
co ti na tom nefunguje?
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 06.09.07 Prihlásený: 21.03.24 Príspevky: 263 Témy: 62 | 62 |
Kód: <?php session_start(); //-----------------------------SPRACOVANIE if($_POST['add_kosik']) { $_SESSION['IDprodukty'] = $_POST['IDprodukty']; $_SESSION['mnozstvo'] = $_POST['mnozstvo']; $IDprodukty = $_SESSION['IDprodukty']; $mnozstvo = $_SESSION['mnozstvo'];
$i = 0; $i++; $kosik[$i] = array("IDprodukty" => "$IDprodukty", "mnozstvo" => "$mnozstvo"); }
//-----------------------------FORM echo "<table border=1>"; $spoj_produkty = MySQL_Query("SELECT * FROM $tbsetup_produkty"); $count = MySQL_Num_Rows($spoj_produkty); while ($r = MySQL_Fetch_Array($spoj_produkty)) { $IDprodukty = $r['IDprodukty']; echo "<tr><td>Produkt ID: ".$r['IDprodukty'].""; echo "</td><td>".$r['produkty_nazov'].""; echo "</td><td><form action='index.php?stranka=katalog' method='POST'>"; echo "<input type='text' name='mnozstvo' size='2'>"; echo "<input type='hidden' name='IDprodukty' value='$IDprodukty'>"; echo "<input type='submit' name='add_kosik' title='Pridaj do kosika'>"; echo "</form></td></tr>"; } echo "</table>";
//------------------------------VYPIS echo "KOSIK:<br />"; echo "Produkt: ".$kosik[$i]."<br />";
?>
zatial mam toto ... nejde
ani nepamata ani nepridava ani nevypisuje nic ...
|
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
Tvoja premenná $kosik stále nemá žiadnu spojitosť so session.
A len pre istotu: Mysql_conect() a mysql_select_db() v tom kóde u seba máš, že ano?
No a aké chybové hlásenia ti to vyhodilo?
|
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 | 51 Bydlisko: Bratislava |
tu mas nejaky funkcny zaklad, mal by si to pochopit... samozrejme, chybaju tam osetrenia, ale ako ukazka to hadam staci. Samotny kosik predstavuje pole $_SESSION['kosik'], kde kluce su idcka produktov a hodnoty su mnozstva jednotlivych produktov v kosiku:
Kód: <?php session_start();
if(!isset($_SESSION['kosik'])) { $_SESSION['kosik'] = array(); }
if(isset($_POST['IDprodukty'], $_POST['mnozstvo'])) { $IDprodukty = $_POST['IDprodukty']; $mnozstvo = $_POST['mnozstvo']; if(isset($_SESSION['kosik'][$IDprodukty])) { $_SESSION['kosik'][$IDprodukty] += $mnozstvo; } else { $_SESSION['kosik'][$IDprodukty] = $mnozstvo; } } ?> <form method="post"> <input type="hidden" name="IDprodukty" value="1"> <input type="text" name="mnozstvo" value="1"> <input type="submit" name="add_kosik" value="Pridaj do kosika"> </form> <?php print_r($_SESSION['kosik']); ?>
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 06.09.07 Prihlásený: 21.03.24 Príspevky: 263 Témy: 62 | 62 |
Dakujem Stenley, uz mi je to jasne ... urobil som nespocetne chyb.
|
|
Stránka: 1 z 1
| [ Príspevkov: 16 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v Ostatné | 4 | 710 | 14.03.2008 21:38 HAE07 | | v PHP, ASP | 7 | 768 | 02.12.2010 15:31 walther | | v PHP, ASP | 16 | 2098 | 30.07.2010 16:21 camo | | v PHP, ASP | 24 | 1552 | 26.03.2008 0:53 wotan | | v PHP, ASP | 3 | 913 | 10.11.2009 19:03 Wicky | | v PHP, ASP | 5 | 492 | 23.09.2012 13:00 killer | | v PHP, ASP | 2 | 423 | 16.01.2009 20:27 stenley | | v PHP, ASP | 1 | 575 | 29.06.2009 17:51 emer | | v PHP, ASP | 2 | 531 | 25.02.2010 14:59 arno | | v PHP, ASP | 7 | 673 | 11.10.2007 14:37 xxxmiroxxx | | v PHP, ASP | 1 | 688 | 29.09.2008 0:28 chrono | | v PHP, ASP | 1 | 573 | 28.12.2008 13:43 Tominator | | v PHP, ASP | 1 | 587 | 26.03.2009 19:36 Ďuri | | v PHP, ASP | 24 | 1973 | 19.01.2007 18:27 m@-nX | | v PHP, ASP | 16 | 1170 | 02.06.2008 14:20 Tominator | | v Ostatné | 2 | 600 | 13.10.2009 13:31 myxall |
|