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
550
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
Vuonna 2026 jää entistä vähemmän rahaa käteen palkansaajille
Työttömyysvakuutusmaksu nousee 0,3 prosenttia. Työeläkemaksu nousee 7,15 prosentista 7,3 prosenttiin. Työmarkkinajärjest1217266Suomen kansa puhunut: Purra huonoimpia ministereitä
Kouluarvosanalla 6–, eli samaa tasoa mitä Purran oikeakin koulutodistus. Epäpätevyys on tullut huomattua Suomen talouden4965408Mitä aiot tehdä uudenvuoden aattona
Mitä olet suunnitellut tekeväsi uudenvuoden aattona ja aiotko ensi vuonna tehdä jotain muutoksia tai uudenvuoden lupauks1513335Joulun ruokajonoissa entistä enemmän avuntarvitsijoita - Mitä ajatuksia tämä herättää?
Räppärit Mikael Gabriel, VilleGalle ja Jare Brand jakoivat ruokaa ja pehmeitäkin paketteja vähävaraisille jouluaattoa ed2162641Marin sitä, Marin tätä, yhyy yhyy, persut jaksaa vollottaa
On nuo persut kyllä surkeaa porukkaa. Edelleen itkevät jonkun Marinin perään, vaikka itse ovat tuhonneet Suomen kansan t492350Varsinainen vetonaula tämä Pyhäjärven keskustelupalsta
Lisää kummasti muuttohaluja, kun lukee tätä foorumia. Tosin väärään suuntaan. Marraskuuhun mennessä tämä vähäinenkin vä681288Pituuden mittaaminen
Ihmisen pituuden mittaaminen ja puolikkaat senttimetrit. Kuuluuko ne puolikkaatkin sentit tai millit teistä ilmoittaa m431282En tiedä enää
Pitäiskö mun koittaa vältellä sua vai mitä? Oon välillä ollut hieman mustasukkainen, myönnän. En ymmärrä miksi en saa su771252Muistattekos kuinka persujen Salainen Akentti kävi Putinin leirillä
Hakemassa jamesbondimaista vakoiluoppia paikan päällä Venäjällä? Siitä ei edes Suomea suojeleva viranomainen saanut puhu111169- 1111143