Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Carrello ASP/JScript

  1. #1

    Carrello ASP/JScript

    Salve dovrei impostare un carrello che tenga in memoria per l'utente le selezioni effettuate nei 15 giorni precedenti. Questo non è il problema. L'accesso al carrello è possibile solo se si è autenticati e può avvenire dalla pagina dei prodotti cliccando su un pulsante "Seleziona" oppure dal menu cliccando sul link "carrello". Il mio problema è gestire la visualizzazione quando si arriva al carrello cliccando dal menù. Come faccio a far visualizzare tutte le precedenti selezioni. Questo è il pezzo di codice che avevo pensato
    <%
    var con = Server.CreateObject("ADODB.Connection");
    var conString;
    conString = "Provider=Microsoft.Jet.OLEDB.4.0; "+ "Data Source=" +Server.MapPath("shop.mdb");
    con.Open(conString);

    if(String(Request.ServerVariables("HTTP_COOKIE"))= ="undefined"){
    Response.Write("

    Attenzione, Cookies non abilitati! Questo sito utilizza i Coockies</p>");
    Response.Write("

    Per abilitare/disabilitare i Cookies: strumenti >> opzioni >> privacy >> impostazioni cronologia-utilizza impostazioni personalizzate.</p>");
    }else{
    if (Session("utente")==undefined){
    Response.write("<h1>Attenzione! il carrello &egrave; disponibile solo per gli utenti autenticati.</h1>");
    } else {
    var rst = Server.CreateObject("ADODB.Recordset");
    var sSQLString= "Select * from prods";
    rst = con.Execute(sSQLString);
    var err=true;

    if(Request.ServerVariables("REQUEST_METHOD")=="GET "){
    e = new Enumerator(Request.QueryString("qta"));
    err = false;
    } else if(Request.ServerVariables("REQUEST_METHOD")=="POS T"){
    e = new Enumerator(Request.Form("qta"));
    err = false;
    } else{
    Response.Write("Metodo sconosciuto.");
    }

    %>
    <table class="listaProdotti">
    <caption>Riepilogo</caption>
    <thead>
    <tr><th class="listaProdotti">Nome prodotto</th><th class="listaProdotti">Quantit&agrave; selezionata</th><th class="listaProdotti">Costo unutario</th></tr>
    </thead>
    <tbody>
    <%
    if(!err){
    var CostoTot=0;
    var a;
    a=String(e.item());
    if (a="undefined"){
    while(!rst.EOF){
    var b= Request.Cookies(rst("pname"));
    if(b!=""){
    b=parseInt(b);
    if(!isNaN(b)){
    var prezzo=parseFloat(rst("price"))/100;
    prezzo=prezzo.toFixed(2);
    Response.Write("<tr><td class='listaProdotti'> "+rst("pname")+"</td><td class='listaProdotti'>"+b+"</td><td class='listaProdotti'> &euro; "+prezzo+"</td> <td><input type='submit' onclick='Cancella("+rst("pname")+")' value='CANCELLA'></td></tr>");
    CostoTot= CostoTot + prezzo*b;
    }
    }
    rst.MoveNext();
    }
    if(CostoTot<=0 || isNaN(CostoTot)){
    Response.Write("<tr><td colspan='3' class='listaProdotti'>Non &egrave; stato selezionato alcun prodotto o i valori inseriti non erano corretti.</td></tr>");
    }else {
    Response.write("<tr><td colspan='3' class='listaProdotti'>Costo finale: &euro; "+CostoTot.toFixed(2)+"</td></tr>");

    }

    Però mi è venuto in mente che se dalla selezione dei prodotti (dove c'è un <input type="text">) viene scritto undefined si rientra nella casistica.
    Posso risolvere il tutto impostando una maxlength per il tag <input> o esiste una soluzione migliore? Grazie!

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ma il problema qual'è, recuperare i dati? Leggere il cookie? O....
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    grazie lo stesso ho risolto giocando con i valori passati facendoglieli scrivere

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.