Olen tehnyt ostoskorin javaScriptillä. Minulla on siinä eri tuoteryhmiä, joissa jokaisella on oma sivunsa, nämä tuoteryhmäsivut olen tehnyt php:llä ja mySql:llä käyttäen tietokantaa.Tässä ostoskorissani tiedot haetaan tietokannasta. Ongelma on siinä, että kun lisään eri sivuilta tuotteita ostoskoriin, niin saan vain yhden sivun tuotteet näkymään ostoskorissa eli ostoskori toimii vain yhdelle sivulle. Kun lisään jonkun toisen sivun tuotteen ostoskoriin, niin ostoskori alkaa laskemaan uudestaan ja poistaa automaattisesti edellisen sivun tuotteet siitä. Saan vain toimimaan ostoskorin siten, että laitan kaikki tuotteet samalle sivulle, jota en halua tehdä. Joten osaisiko kukaan auttaa tässä?
Ostoskori ongelma
4
563
Vastaukset
- Piru
Sessioon tai sinne mysql-kantaan.
Sessio pitää aloittaa .php-skriptissä ennen kuin mitään tulostetaan käyttäjälle.
Jee!
Sitten seuraavalla sivulla otat tallessa olevan session ja sieltä löytyy edelliset tuotteet.- --------
*Sessioon tai sinne mysql-kantaan.*
Mielummin sessioon tai kekseihin, ellei halua ominaisuutta, että voi jatkaa myöhemmin ostoksien tekoa kun kirjaantuu tunnuksilla. Sessiot ja keksit on tarkoitettu väliaikasille tiedoille.
*session_register("ostoskori").....*
Nykyään suositellaan käytettäväs $_SESSION['ostoskori']
Ja sinun toteutuksessa tulee ongelmia useamman saman tavaran lisäämisen kanssa sekä poistamisessa ja muokkaamisessa.
Esim lisäät ostoskoriin 3 * vaihdelaatikko, mutta tulet toisiin aatoksiin ja haluatkin vain kaksi, tällöin joudut laskemaan jo olevat vaihdelaatikot ja sitten poistamaan yhden vaihdelaatikon.
Sen sijaan järkevämpi tehdä kolmiulotteinen taulukko, vai olikos noi kaksulottaisia (samapa tuo).
$_SESSION['ostoskori']['vaihdelaatikko'} = 3(tuotteen määrä);
Tällöin voit suoraan lisätä tai poistaa halutun määrän tuotteita.
Ja jos kerralla halutaan lisätä vaikkapa kolme samaa tuotetta niin se onnistuu helposti.
$_SESSION['ostoskori']['vaihdelaatikko'] = 3;
Eikä
$_SESSION['ostoskori']['vaihdelaatikko'] = 3;
Joka tuhoaisi jo olemassa olevan määrän.
Tuotteen nimen tilalla kannattaa käyttää tuotteen ID numeroa, tällöin sekaantumisen vaaraa ei ole, jos tuotteita paljon myynnissä. Tuotteen nimen voi myös tallentaa sessioon tai noutaa kannasta kun sitä tilausvahvistuksessa/muokkaamisessa tarvitaan.
*$HTTP_SESSION_VARS*
Register globall nykyään oletuksena off joten toi ei toimine oletusasetuksilla. Siksi haetaan tiedot $_SESSION['xxx'] - Auttaisiko joku?
-------- kirjoitti:
*Sessioon tai sinne mysql-kantaan.*
Mielummin sessioon tai kekseihin, ellei halua ominaisuutta, että voi jatkaa myöhemmin ostoksien tekoa kun kirjaantuu tunnuksilla. Sessiot ja keksit on tarkoitettu väliaikasille tiedoille.
*session_register("ostoskori").....*
Nykyään suositellaan käytettäväs $_SESSION['ostoskori']
Ja sinun toteutuksessa tulee ongelmia useamman saman tavaran lisäämisen kanssa sekä poistamisessa ja muokkaamisessa.
Esim lisäät ostoskoriin 3 * vaihdelaatikko, mutta tulet toisiin aatoksiin ja haluatkin vain kaksi, tällöin joudut laskemaan jo olevat vaihdelaatikot ja sitten poistamaan yhden vaihdelaatikon.
Sen sijaan järkevämpi tehdä kolmiulotteinen taulukko, vai olikos noi kaksulottaisia (samapa tuo).
$_SESSION['ostoskori']['vaihdelaatikko'} = 3(tuotteen määrä);
Tällöin voit suoraan lisätä tai poistaa halutun määrän tuotteita.
Ja jos kerralla halutaan lisätä vaikkapa kolme samaa tuotetta niin se onnistuu helposti.
$_SESSION['ostoskori']['vaihdelaatikko'] = 3;
Eikä
$_SESSION['ostoskori']['vaihdelaatikko'] = 3;
Joka tuhoaisi jo olemassa olevan määrän.
Tuotteen nimen tilalla kannattaa käyttää tuotteen ID numeroa, tällöin sekaantumisen vaaraa ei ole, jos tuotteita paljon myynnissä. Tuotteen nimen voi myös tallentaa sessioon tai noutaa kannasta kun sitä tilausvahvistuksessa/muokkaamisessa tarvitaan.
*$HTTP_SESSION_VARS*
Register globall nykyään oletuksena off joten toi ei toimine oletusasetuksilla. Siksi haetaan tiedot $_SESSION['xxx']Sessionin käyttäminen ei onnistunut antaa tällaisen
virheilmoituksen:
Warning: Cannot modify header information - headers already sent by (output started at d:\apache\htdocs\tietokanta\tilaus1.php:8)
Joten mitäkähän tämän kanssa voisi sitten tehdä? - fgjfjjh
Auttaisiko joku? kirjoitti:
Sessionin käyttäminen ei onnistunut antaa tällaisen
virheilmoituksen:
Warning: Cannot modify header information - headers already sent by (output started at d:\apache\htdocs\tietokanta\tilaus1.php:8)
Joten mitäkähän tämän kanssa voisi sitten tehdä?session_start ennen HTML-tegeja, kuten pirun esimerkissä.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Persujen kannatusromahdus ilahduttaa
Siin' ei hyvä häviä. Luotto parempaan tulevasuuteen alkaa taas palautua.1754674Avopuoliso, mies-/naisystävä vai mikä?
Kävin eilen irl keskustelun, joka jätti minut pohtimaan seuraavaa ... millä nimityksellä kutsua henkilöä, jonka kanssa o2043382Huvittava ilmiö: Vasemmistolaiset uskoo sokeasti SDP:n parantavan heidän
elämäänsä, jos demarit johtaa seuraavaa hallitusta (Kyse on siis palstan vasemmistolaisista) Totuus on toinen, nimittäi1172926Pitkän päivän ilta
Tarina elämättömästä miehestä, jonka elämän täytti velvollisuudentunto. Pikkutarkka, huolellinen, hyvällä katsottu, miel1562922Riikka ohoi! Saksa alensi bensaveroa, missä euron bensa?
Perussuomalaisten yksi vaalilupauksista oli euron bensiini suomalaisille autoilijoille. Ei ole näkynyt. Jopa vasemmis442850Tulipalo rivitalossa, tuhoutuu täysin
Kainuun pelastuslaitos sai hieman puolenyön jälkeen maanantaina ilmoituksen rivitalon huoneistossa syttyneestä tulipalos512257Miksi Kuhmolaiset on niin nyrpeä ilmeisiä?
Miksi suurin osa (ei onneksi kaikki) on niin typääntyneen näkösiä elämäänsä? Tuijotetaan toisia pahansuopaisesti ja kat132247Totuus sattui demareihin, vaativat asiallisen jutun poistoon
ja oli vielä suosittu, mutta kun demarit tarpeeksi valittivat, niin poistettiin. Raukkamaista toimintaa. Eli siis juttu552025En selvinnyt ilman naarmuja
Vaikka ehkä kuvittelin sen olevan ilmoitusluonteinen asia, jonka jälkeen kaikki palaa entiselleen ja ilma puhdistuu. Naa131965Kyllä, maata ei halua puolustaa nimenomaan punavihreän puolen edustajat
"Esimerkiksi maanpuolustushenki on keskimääräistä alempana naisten, arvoliberaalien, heikossa taloustilanteessa olevien671555