Voor de screencast + tutorial van deze week leren we je hoe je je eigen winkelwagentje kunt bouwen met PHP en MySQL. Zoals je zult zien, is het niet zo moeilijk als je misschien had gedacht.
Als u op zoek bent naar een snelle, kant-en-klare oplossing, kunt u kiezen uit meer dan 50 PHP-winkelwagentjessjablonen op Envato Market. Hier is een korte blik op een paar van hen.
Dit is een eenvoudig te gebruiken, aanpasbaar, door PHP / MySQL aangedreven winkelwagentje. Het is uitgerust met twee afrekenopties met PayPal en Verzend bestelling per e-mail. Je kunt beide of een van beide gebruiken.
LivelyCart - een JQuery PHP Store / Shop op Envato MarketUniversal Digital Shop is een krachtig script, waarmee u digitale producten rechtstreeks op uw website kunt verkopen. Het behandelt betalingen via meerdere betalingsgateways (PayPal, Payza / AlertPay, Skrill / Moneybookers, Authorize.Net, InterKassa, EgoPay, Perfect Money, BitPay, Blockchain.info en Stripe) en kan eenvoudig in elke webpagina worden geïntegreerd.
Met deze widget hoeft u geen ingewikkelde winkelwagentjes te installeren en hun ontwerp te maken dat past bij uw website. Universal Digital Shop is de gemakkelijkste manier om digitale producten te distribueren en geld te verdienen met een website.
Universal Digital Shop op Envato MarketMet dit script kunt u een snelle en eenvoudige creditcardterminal voor uw klanten laten verwerken door stripe.com.
Installatie en configuratie van het script duurt minder dan 5 minuten (u moet echter wel een SSL- en een stripe.com-account hebben).
Stripe Payment Terminal op Envato MarketSymbiotic - AJAX Winkelwagen is een krachtig systeem dat kan worden geïntegreerd in nieuwe / oude HTML-websites om hun functionaliteit als een winkelwagen uit te breiden. U hoeft OpenCart of een andere winkelwagen niet te gebruiken voor uw e-commerce website. U kunt binnen enkele minuten uw eigen e-commerce website maken met behulp van dit wagensysteem.
AJAX-kar voor HTML-websites met bestellingen en facturen op Envato MarketOf u nu een bepaalde CMS zoals WordPress of Magento gebruikt of gewoon een eCommerce-site wilt hebben met een winkelwagentje dat helemaal opnieuw is opgebouwd, er zijn tal van deskundige ontwikkelaars op Envato Studio die u voor een redelijke prijs zullen helpen. Dus als je vastzit, ga dan naar daar voor de hulp die je nodig hebt.
Leveranciers van winkelwagentje op Envato StudioDit is slechts een kleine selectie van de PHP-winkelwagentjes die beschikbaar zijn op Envato Market. Als die opties je probleem niet oplossen, of als je het liever zelf doet, gaan we verder met het proces om je eigen winkelwagentje samen te stellen met PHP en MySQL.
Laten we beginnen met het bekijken van de mappenstructuur:
Structuur
We beginnen met het schrijven van de html-markup en stylen het vervolgens. Zo open index.php en kopieer en plak de onderstaande code:
Winkelwagen
Zoals u kunt zien, heeft onze pagina twee kolommen: de hoofdkolom en de zijbalk. Laten we naar de CSS gaan. Open het bestand style.css en typ de onderstaande code:
body font-family: Verdana; lettergrootte: 12px; kleur: # 444; #container width: 700px; marge: 150 px auto; achtergrondkleur: #eee; overloop verborgen; / * Overloop instellen: verborgen om de drijvers op #main en #sidebar * / opvulling: 15px te wissen; #main width: 490px; zweven: links; #sidebar width: 200px; zweven: links;
Dit is hoe onze productpagina er nu zou moeten uitzien:
Voordat we verdergaan met het PHP / MySQL-deel, moeten we de database maken. Dus open phpMyadmin en volg deze stappen:
Om wat tijd te besparen, heb ik mijn productentabel geëxporteerd, zodat u eenvoudig de volgende query kunt uitvoeren:
CREËER TAFEL INDIEN NIET BESTAAT 'producten' ('id_product' int (11) NOT NULL AUTO_INCREMENT, 'naam' varchar (100) NOT NULL, 'description' varchar (250) NOT NULL, 'price' decimal (6,2) NOT NULL, PRIMARY KEY ('id_product')) ENGINE = MyISAM DEFAULT CHARSET = latin1 AUTO_INCREMENT = 7; INSERT INTO 'producten' ('id_product', 'name', 'description', 'price') VALUES (1, 'Product 1', 'Some random description', '15 .00 '), (2,' Product 2 ', 'Enkele willekeurige beschrijving', '20 .00 '), (3,' Product 3 ',' Enkele willekeurige beschrijving ', '50 .00'), (4, 'Product 4', 'Enkele willekeurige beschrijving', '55 .00 '), ( 5, 'Product 5', 'Some random description', '54 .00 '), (6,' Product 6 ',' Some random description ', '34 .00');
Voordat we overgaan tot het extraheren van gegevens uit de database, maak ik mijn index.php een sjabloon voor de productlijst en winkelwagen. Dus voeg de volgende code toe aan de bovenkant van uw index.php pagina:
Om dit te laten werken, moeten we het bestand opnemen; voeg deze regel toe aan de index.php tussen de div met de id van "main":
Nu is hier het complete index.php we hebben nu:
Winkelwagen
Laten we de verbinding met MySQL maken. Open connections.php en typ het volgende:
Nu is het tijd om de markup voor de productenpagina te schrijven. Dus ga je gang open het en typ het volgende:
Product lijst
Naam | Omschrijving | Prijs | Actie |
---|---|---|---|
Product 1 | Een willekeurige beschrijving | 15 $ | Voeg toe aan winkelmandje |
Product 2 | Een willekeurige beschrijving | 25 $ | Voeg toe aan winkelmandje |
Laten we de pagina eens bekijken:
Zoals je kunt zien, is het behoorlijk lelijk. Dus laten we het stijlen door deze extra CSS toe te voegen.
een color: # 48577D; tekst-decoratie: geen; a: hover text-decoration: onderstrepen; h1, h2 margin-bottom: 15px h1 font-size: 18px; h2 font-size: 16px #hoofdtabel width : 480px; #hoofdtabel th opvulling: 10px; achtergrondkleur: # 48577D; kleur: #fff; text-align: left; #hoofdtabel td opvulling: 5px; #hoofdtabel tr background-color: # d3dcf2;
Oké: laten we nu nog een keer kijken:
Ziet er veel beter uit, vind je niet? Hieronder heb je het complete style.css code:
body font-family: Verdana; lettergrootte: 12px; kleur: # 444; a color: # 48577D; tekst-decoratie: geen; a: hover text-decoration: onderstrepen; h1, h2 margin-bottom: 15px h1 font-size: 18px; h2 font-size: 16px #container width: 700px; marge: 150 px auto; achtergrondkleur: #eee; padding: 15px; overloop verborgen; #main width: 490px; zweven: links; # hoofdtabel width: 480px; #hoofdtabel th opvulling: 10px; achtergrondkleur: # 48577D; kleur: #fff; text-align: left; #hoofdtabel td opvulling: 5px; #hoofdtabel tr background-color: # d3dcf2; #sidebar width: 200px; zweven: links;
Voordat we het product uit de database halen, verwijderen we de laatste twee tabelrijen uit onze tabel (we hebben deze alleen gebruikt om te zien hoe onze tabel eruit zal zien). Verwijder dit:
Product 1 Een willekeurige beschrijving 15 $ Voeg toe aan winkelmandje Product 2 Een willekeurige beschrijving 25 $ Voeg toe aan winkelmandje
Super goed! Nu op de plaats waar de rijen van de tabel waren, typt u de volgende PHP-code:
$ "> Voeg toe aan winkelwagen
Als u een van de koppelingen voor toevoegen aan winkelwagentje plaatst, ziet u onderaan de pagina dat de id van het product is doorgegeven.
Laten we dat anker laten werken door de volgende code boven aan onze pagina toe te voegen:
1, "prijs" => $ rij_s ['prijs']); else $ message = "Dit product-id is ongeldig!"; ?>
Laten we controleren of die berichtvariabele ingesteld is en echo naar de pagina (typ deze code onder de titel van de H1-pagina):
$ message";?>
Hier kun je het complete zien products.php pagina.
1, "prijs" => $ rij_s ['prijs']); else $ message = "Dit product-id is ongeldig!"; ?>Product lijst
$ message";?>
Naam | Omschrijving | Prijs | Actie |
---|---|---|---|
$ | "> Voeg toe aan winkelwagen |
Hier is de foutmelding als de id van het product ongeldig is
Laten we teruggaan naar de index.php en bouw de zijbalk. Voeg de volgende code toe:
kar
$ waarde) $ sql. = $ id. ","; $ sql = substr ($ sql, 0, -1). ") BESTELLING BY naam ASC"; $ Vraag = mysql_query ($ sql); while ($ row = mysql_fetch_array ($ query)) ?>X
Ga naar winkelwagen Uw winkelwagen is leeg. Voeg enkele producten toe.";?>
Bekijk de afbeeldingen hieronder:
Omdat de index.php een sjabloon is voor alle bestanden, is de zijbalk zichtbaar in de cart.php te. Is dat niet cool??!
Eindelijk, open cart.php en begin met het typen van de volgende code:
Bekijk winkelwagen
Ga terug naar de productenpagina
Als u een item wilt verwijderen, stelt u de hoeveelheid in op 0.
De code is vergelijkbaar met die van index.php en products.php, dus ik ga niet alles opnieuw uitleggen. U zou moeten opmerken dat in plaats van de hoeveelheid in een formulier weer te geven, deze nu wordt weergegeven in een invoervak (zodat we de hoeveelheid kunnen wijzigen). De tabel is ook verpakt in een formuletag. Om de totale prijs van de artikelen te krijgen, vermenigvuldigen we de hoeveelheid van het specifieke product (van de sessie) met de prijs. Dit gebeurt in elke lus.
NOTITIE: De invoer is een array, de sleutel is de id van het product en de hoeveelheid is de hoeveelheidwaarde.
De laatste stap die we moeten doen, is het formulier laten werken. Dus voeg deze code toe aan de bovenkant van de pagina cart.php.
if (isset ($ _ POST ['submit'])) foreach ($ _ POST ['quantity'] als $ key => $ val) if ($ val == 0) unset ($ _ SESSION ['winkelwagen'] [$ key]); else $ _SESSION ['winkelwagen'] [$ -code] ['hoeveelheid'] = $ val;
Hier is het complete cart.php
$ val) if ($ val == 0) unset ($ _ SESSION ['winkelwagen'] [$ -code]); else $ _SESSION ['winkelwagen'] [$ -code] ['hoeveelheid'] = $ val; ?>Bekijk winkelwagen
Ga terug naar de productenpagina.
Om een item te verwijderen, stelt u de hoeveelheid in op 0.
Ik hoop dat je deze tutorial leuk vond. Als je vragen hebt, bekijk dan de meer diepgaande video-zelfstudie!