Snabb e-handelsutveckling med Dreamweaver UltraDev och PayPal


Av Joel Martinez och Ray West (www.basic-ultradev.com)

I den artikeln går vi igenom hur du integrerar UltraDev med PayPal med hjälp av gratis serverfunktioner för att lösa tre vanliga försäljningsscenarier på nätet. Serverfunktionerna, som kallas PayPal Extension Suite, är tillgängliga hos Mike Ahern på Shore Computers (http://www.shorecomp.com/ultradev/paypal/default.asp). Sviten är gratis, men vi vill uppmuntra dig att göra donationer, med hjälp av PayPal, om du använder hans arbete.

Att använda PayPal-kundvagnen även utan hjälp av denna serverfunktionssvit kräver endast kunskaper i HTML. Om du kan klippa ut och klistra in text kan du enkelt använda den här funktionen utan hjälp av det här tillägget. Den här sviten integreras mycket smidigt med UltraDev och ger dig ett användargränssnitt som är lätt att förstå. Följande tre exempel lär dig att använda PayPals system för tre vanliga typer av transaktioner:
  • Inköpet av ett enda objekt, som du kan använda om du vill sälja ett objekt i ett auktionsliknande förfarande.
  • Den enkla kundvagnen, som hjälper dig att konfigurera flera objekt som kan köpas i en PayPal-transaktion
  • Den kundvagn som styrs av en databas, som hjälper dig att konfigurera ett inventeringssystem som kan styras och levereras till dina sidor dynamiskt från en databas.

Skapa en e-handelswebbplats med PayPal


Att skapa en e-handelswebbplats med PayPal är kanske de enklaste lösningarna att genomföra. Med tanker på den tid som sparas när det gäller utvecklingen kan det här vara ett tilltalande alternativ för ett projekt med en liten budget. Det finns förvisso kompromisser. Eftersom dynamiken i kundvagnen hanteras i ett popup-fönster finns det, förutom möjligheten att ta med din logotyp i kundvagnen, inte så mycket utrymme för anpassning. Men de flesta webbplatserna kräver inte ett fullständigt anpassat användargränssnitt och kan dra stor nytta av det här systemet. De välkända gränssnitt som produceras av PayPal kan faktiskt bidra till att stärka konsumenternas förtroende.

Det här är en svit med tillägg, som har ett antal serverfunktioner, var och en med något annorlunda funktionalitet. De har dock vissa gemensamma egenskaper.
  • PayPal e-post – varje serverfunktion kommer att kräva att du anger den e-postadress som används för ditt PayPal-konto. Om du tänker göra affärer via ditt konto bör du definitivt välja företagskonto.
  • Statiska/dynamiska fält – nästan alla serverfunktioner använder fält som gör att du kan välja objekt från databindningsfönstret i UltraDev eller använda statiska värden. Det enda som du måste komma ihåg är att ett statiskt värde måste stå inom citationstecken. (dvs. ”5,00”)
  • Pengar – alla monetära fält måste vara i formatet xx.xx. Om du tilldelar ett av dessa fält ett värde från databindningspaletten måste du se till att det står i det formatet. Du kan använda den inbyggda UltraDev-funktionaliteten för att tilldela det här värdet ett formateringsschema.

Bild 1: Databindningspalett tilldelar monetär formatering.
  • Webbadressfält – några av serverfunktionerna ber dig om en webbadress till en logotyp eller en plats att skicka användaren till efter att en transaktion har behandlats. Alla dessa måste vara absoluta webbadresser, vilket innebär att http://www.yourdomain.com måste ingå.
Serverfunktionerna

Serverfunktionerna nedan finns med i sviten för att du ska kunna interagera med PayPals funktioner.
  1. Funktionen för ett enda inköp
    Den här serverfunktionen, om den används på en bild eller text, gör en länk direkt till PayPals betalningsskärm. Du kan skapa länkar med den, till exempel ”Köp mig nu!”. Det är praktiskt på webbplatser som bara säljer en enda produkt eller tjänst.
  2. Funktionen för från din kundvagn
    Om du vill använda en annan kundvagnslösning, som UltraCart II, kan du fortfarande använda de tjänster som tillhandahålls av PayPal för att godkänna betalning för dina produkter. Den enda information som du behöver ge (förutom ditt PayPal-id och flera webbadresser) är ett ordernummer och ett totalt försäljningsbelopp. Den informationen är lätt att samla in och föra in i det enkla användargränssnittet.
  3. Funktionen för att lägga till objekt i kundvagnen
    De här är kanske den serverfunktion som kommer att användas mest. Funktionen för att lägga till objekt i kundvagnen integreras mycket lätt med en databasskärm med objekt, så att kunder kan se sig omkring och lägga till objekt i kundvagnen. När du klickar på den genererade länken öppnas ett popup-fönster med innehållet i din kundvagn, som visas på ett snyggt sätt. Användarna kan sedan gå vidare från den här skärmen till betalningsområdet där de antingen kan logga in på sitt PayPal-konto eller bara lämna betalningsinformationen.
  4. Funktionen visa kundvagn
    Används tillsammans med funktionen Lägg till objekt i kundvagnen och genom att klicka på en länk som genererats av serverfunktionen för att visa kundvagnen visas ett fönster med innehållet i din kundvagn. Den enda information som behövs är ditt PayPal-e-post-id.
  5. Donationsfunktionen
    Den länk som framställs av den här serverfunktionen tar användarna till en skärm där de kan betala och överföra till dig från sitt PayPal-konto. Personer som säljer spridprogram eller ideella organisationer kan dra nytta av den här strategin eftersom de får möjlighet att ta emot pengar från sin webbplats utan att vara bundna till ett visst inköp.
  6. Prenumerationsfunktionen
    Webbplatser som erbjuder prenumerationsbaserad åtkomst till sitt innehåll drar nytta av den här unika tjänsten som erbjuds av PayPal. Användare som registrerar sig för en prenumeration får en faktura från PayPal varje månad. Pengarna går direkt till ditt PayPal-konto och du får ett e-postmeddelande med varje betalning som informerar dig om användarens fortsatta prenumeration. Med den länk som genererats av denna serverfunktion visas ett fönster som ber användarna om deras faktureringsinformation.

Praktiska tillämpningar för PayPals svit


Det finns två vanliga situationer som innefattar de flesta scenarier inom e-handel på internet i dag. Det enda inköpet liknar auktionsmodellen på det sättet att en säljare endast erbjuder ett objekt och när det har sålts är det borta. Kundvagnsmodellen innefattar försäljning av flera objekt och eventuellt flera kopior av objekten. Det följande är tre exempel på att med PayPal-tjänsten erbjuda ett enda objekt till försäljning, en kundvagn med PayPal-kundvagnen och en kundvagn med en tredje parts kundvagn för att interagera med PayPal.

Vi skapade en demowebbplats som finns på http://www.codecube.net/teksales/. De exempel som anges i denna artikel kan hittas på demowebbplatsen.


Bild 2: teksales demowebbplats


”En styck tack” – försäljning av ett objekt


Serverfunktionen det enda inköpet används när du har ett objekt att sälja. eBay-användare har länge använt denna funktion för att få betalt vid sina auktioner. Om din webbplats säljer mer än ett objekt finns det andra funktioner som passar dig bättre. Men för enstaka försäljning av ett begagnat objekt eller samlarobjekt är serverfunktionen det enda inköpet ett snabbt alternativ som är enkelt att använda.

Föreställ dig att du har den häftigaste motorcykeln, Ducati Monster S4Fogarty. En dag när du kör omkring spärrar en bil plötsligt vägen för dig vid ett körfältsbyte. Plötsligt passerar ditt liv revy framför dina ögon, och du kan inte tänka dig att köra motorcykeln en enda meter till utan att börja kallsvettas. Därför bestämmer du dig för att sälja den på din webbplats. Du gör en snabb design i UltraDev och publicerar den på din webbplats.


Bild 3: Webbplatsen med Ducati-försäljningen... före SB

Du föreställer dig att människor kommer att stå i kö för att betala dig för det här vidundret, men tyvärr kommer de inte. Det kan finnas flera orsaker. Priset är kanske högre än vad många människor kan skriva en check på.

Använda serverfunktionen ett enda inköp

Det är enkelt att använda serverfunktionen ett enda inköp. När din sida är utformad behöver du bara välja ett objekt på sidan som ska fungera som köpknappen. Detta kan antingen vara en ”Köp mig”-bild eller text som förmedlar samma budskap. Markera objektet och använd serverfunktionen som du använder andra. Serverfunktionen ett enda inköp finns i serverfunktionspaletten under PayPal > PayPals enstaka inköp.



Bild 4: pp_SinglePurchase

Fyll i fälten i serverfunktionens gränssnitt så är du färdig. När en användare klickar på den länk som genereras av funktionen öppnas ett fönster med betalningsuppgifter och användaren vägleds genom betalningsprocessen. Du får en bekräftelse på den slutförda försäljningen från PayPal och sedan kan du börja packa in motorcykeln för att lämna in den på din lokala post.


”Jag tar två av varje” – den enkla kundvagnen


Den enstaka försäljningen utgör en stor del av dagens internetbaserade transaktioner, särskilt med webbauktionernas popularitet. Men de som har för avsikt att göra sin webbplats till en fortgående verksamhet ställs inför ytterligare problem. De har ofta en rad olika produkter och hoppas att deras kunder ska göra flera och återkommande köp från deras sortiment.

Vi återvänder till dig, vår blivande motorcykelförsäljare. Försäljningen av din Ducati gjorde dig medveten om den efterfrågan som finns på motorcykelrelaterade varor, så du har beslutat att bygga ett webbföretag som säljer sådana. Med PayPals nya lösning för betalningar över internet blomstrar affärerna. Du gör stora vinster genom att sälja motorcyklar via din webbplats, men du vill ha mer så du bestämmer dig för att börja sälja vissa produkter som kompletterar din motorcykelförsäljning, till exempel hjälmar och skyddsglasögon. Detta är ett ganska enkelt koncept, men du kan inte fortsätta att använda samma lösning. Under dina besök på Wal-Mart varje vecka har du förstått vad du måste göra när du tar en burk avfettningsmedel och placerar den i din kundvagn tillsammans med mjölk och ägg. Du behöver också en kundvagn.

Enkelt uttryckt, med en kundvagn på din webbplats kan besökaren köpa flera objekt med en transaktion. När kunderna går igenom webbplatsen, tittar på varor och väljer vilka objekt som de vill köpa kommer kundvagnen ihåg, antingen genom användning av sessionsvariabler, cookies eller en databas, vilka objekt som har valts. När kunderna vill betala kan de ange betalningsuppgifterna en gång och ordern görs för alla deras objekt.

Använda PayPal-kundvagnen

Användningen av serverfunktionen kundvagn är mycket lik funktionen ett enda inköp. Men eftersom den här funktionen ska användas med en kundvagn finns det några betydande skillnader. För det första finns alternativet att låta dina kunder välja mängden av ett särskilt objekt, till exempel två par handskar eller tre lagningsset för läderbyxor. Den åtgärd som utförs när kunden klickar på köpknappen lägger enkelt till objektet i en kundvagn och möjliggör fortsatt shopping i stället för att försöka inhämta betalningsuppgifter omedelbart.

För att använda serverfunktionen till ditt objekt markerar du ett objekt eller en text på sidan och väljer serverfunktionen Lägg till i kundvagn från PayPal > PayPal Lägg till objekt i kundvagnen i serverfunktionspaletten. Upprepa för varje objekt på din webbplats.



Den länk som skapades öppnar ett nytt fönster till PayPals kundvagnssystem och visar alla objekt som du har lagt till. Om du klickar på samma objekt två gånger ökar kvantiteten med ett. Detta är den metod som är att föredra i denna situation eftersom köpare vill göra så lite som möjligt för att få sina produkter, så om de slipper ett par klick blir de nöjdare och nöjdare kunder köper mer.

Använda PayPal med en kundvagn som styrs av en databas


Föregående exempel är bra övningar och det kan till och med finnas tillfällen när du är i en liknande situation och behöver mycket grundläggande PayPal-funktioner. Men effekten av denna utvidgningssvit visas verkligen när den används tillsammans med en inventeringslösning som styrs av en databas. När du använder en databas för att hantera dina produkter kan det behövas lite längre utvecklingstid, men fördelarna blir uppenbara senare med det lätta underhållet och hanteringen. Om den konstrueras rätt går din webbplats i huvudsak på autopilot.

Tabellstruktur

Den mest tidskrävande delen av konstruktionen av denna typ av webbplats är själva databasen. Det är mycket enkelt att ansluta till PayPals shoppingsystem. I denna diskussion kommer vi att använda en klassisk förälder/barn-master/detalj-datastruktur. Det är den databaslayout som används i 99% av databaser på nätet. Om du behöver hjälp med databasdelen av detta projekt finns det många resurser på internet som kan hjälpa dig.

För alla rader i den överordnade tabellen kan det finnas noll till många rader i den underordnade tabellen. Inom ramen för en webbplats för e-handel betyder detta att vi kommer att ha en kategoritabell som master och produkttabellen som barnet. Ett exempel på data som kan hållas inom:

TV-kategori
- Sony 20 tum
- RCA 19 tum
- Magnavox 32 tum

VCR-kategori
- Panasonic två huvud
- Samsung fyra huvud

Börja med att definiera kategoritabellen med följande fält:
  • catID – autonummer
  • catName – text
Som du ser behöver en mastertabell vanligtvis inte mycket information, eftersom den endast organiserar de många raderna i den underordnade tabellen. Annan information som skulle kunna finnas i denna tabell är:
  • En längre beskrivning
  • En kategoribild
  • Ett aktivt fält som anger om den här kategorin är aktiv för närvarande
Denna tabell kan användas på en sida som visar alla kategorier med objekt som finns på din webbplats. Kunden kan sedan välja en kategori för att visa information om de produkter som finns i varje kategori.

Nästa tabell som vi behöver är produkttabellen. Denna kommer att ha information om de enskilda produkterna, så den måste innehålla ett fält för varje motsvarande objekt i serverfunktionen Lägg till i kundvagn.
  • itemID – autonummer
  • catID – nummer
  • itemName – text
  • Belopp – valuta
  • Leverans – valuta
  • Hantering – valuta
Om du inte ska använda en del av dessa fält (inte avgifter för frakt och hantering till exempel) kan du fylla i dem med nollor.

Som med kategoritabellen använder vi de minsta fälten för korthetens skull. Andra möjliga fält omfattar:
  • Lades till den
  • Aktiv
  • Visningar av sidan

Bild 6: tekDB_relationship
En grafisk framställning av förbindelserna mellan de två tabellerna

När databasens struktur är färdig fyller du i tabellerna med några testdata. Dessa kan ersättas senare med produktionsdata. Skapa först flera kategorier.



Bild 7: tekDB_catTableContents

Tänk på att varje kategori bara är en logisk plats för barnprodukterna. En förbindelse etableras mellan kategoritabellen och en viss produkt genom att catID till den överordnade kategorin placeras i det numeriska fältet catID i produkttabellen. En mer komplex tabellstruktur skulle kunna skapas för att hantera de produkter som kan höra till mer än en kategori, men detta är tillräckligt för närvarande.


Bild 8: tekDB_ProductTableContents


Visa data

När databasen har data som du kan arbeta med är nästa steg att placera data på en sida. Endast två sidor behövs för denna demonstration, en mastersida som visar alla kategorier som användaren kan välja mellan och en detaljsida som visar alla objekt till den valda kategorin.

Skapa först en HTML-tabell för användargränssnittet. En tabell med dimensionerna 2 x 2 blir bra. Den första raden är ett enkelt sidhuvud som beskriver innehållet i kolumnen under och på den andra raden finns postmängden. Skapa en postmängd som väljer kategorinamn och id från tabellen.

Dra kategorinamnet från datakällpaletten till den första kolumnen, andra raden. Den andra kolumnen har en ”Visa”-länk.

Om du vill skapa länken Visa börjar du med att markera texten och använda egenskapskontrollen för att navigera till den sida där produkterna kommer att visas. Klicka på mappikonen så får du en förteckning över de befintliga sidorna på webbplatsen. Välj produktsidan och klicka sedan på knappen Parametrar långt ned i dialogrutan. I parameterfönstret kan du skapa en webbadressparameter som kallas catID (som används i produkternas postmängd för att filtrera) och tilldela ett värde från databasen genom att välja catid-fältet med blixtikonen. När du nu klickar på knappen Visa bredvid kategorin kommer motsvarande id att överföras till produkternas postmängd i webbadressträngen och endast produkterna i den kategorin visas på detaljsidan. När det är klart kan du lägga till serverfunktionen upprepa region på den andra raden.

När kategorisidan nu fungerar är nästa steg att skapa detaljsidan. Vi vet att alla som kommer till denna sida kommer från kategorisidan och har catID i söksträngen. Vi börjar med att skapa en postmängd som får alla fält i tabellen, vi filtrerar catID genom värdet från söksträngen med request (”catID”).


Bild 9: tekDB_categoryRS

Användargränssnittet för denna tabell kan få exakt samma layout, förutom en extra kolumn för priset. Dra objektnamnet till den första kolumnen och priset till den andra och skriv ”Lägg till i kundvagn” i den tredje. Markera texten Lägg till i kundvagn och välj serverfunktionen Lägg till i kundvagn från serverfunktionspaletten. De flesta av fälten i användargränssnittet har en liten blixt bredvid textrutan. Dessa gör att du kan fylla i fälten med fälten från din databas via den postmängd som du har skapat i datakällfönstret. Välj ett fält från databasen för varje motsvarande objekt i serverfunktionen. När detta är gjort kan du lägga till en upprepad region på den andra raden. När produkterna har fyllts i på sidan från databasen vid körning kommer varje tillfälle något läggs i kundvagnen att åtföljas av den passande informationen. När du klickar på ett objekt för inköp uppdateras kundvagnen med den information som du har angett. Underhåll kan nu utföras på objekt i databasen utan att dina HTML-sidor behöver redigeras.


Bild 10: tekDB_Addtocart

Det är inte svårare än så. Kunder kan nu se dina objekt, välja vilka de vill köpa och betala. Snabb programutveckling är en av de viktigaste saker som gör PayPals svit till en utmärkt utmanare inom e-handel. Andra kundvagnssystem behöver mycket utvecklingstid utan att verkligen ta itu med betalningsfrågan. Denna demo skapades på ungefär en timme med kraften hos Dreamweaver UltraDev och PayPals utvidgningssvit.

Denna artikel är ett utdrag från den nya boken UltraDev E-commerce Concepts: Next Steps av Ray West, Tom Muck och Joel Martinez. Mer information om UltraDev och e-handel finns på Basic UltraDev på www.basic-ultradev.com. Där finns information om våra böcker, vägledningar och utvidgningar som avsevärt kan öka din utvecklingskapaciteten på internet.

FRISKRIVNING: Detta innehåll tillhandahålls av artiklarnas respektive författare och inte av PayPal, Inc. eller något av deras dotterbolag. PayPal stöder inte innehållet och ansvarar inte för eventuella felaktigheter. PayPal rekommenderar att du kontaktar artikelförfattaren om du har frågor eller vill ha information om teknisk support, garantier eller licenser, om sådana behövs. Om du väljer att lita på innehållet i dessa artiklar sker detta på egen risk. PayPal ansvarar inte för fel, skador eller andra problem som kan uppstå på grund av innehållet i artiklarna. Detta omfattar även oförutsedda, specifika och indirekta skador samt följdskador. PayPal FRISKRIVER SIG UTTRYCKLIGEN FRÅN ALLA GARANTIER gällande detta innehåll och användningen av det.