Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23

Discussione: carrello e-commerc

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027

    carrello e-commerc

    Buonasera,

    avrei una domanda da porvi, stavo pensando a come impostare il codice per creare una sorta di e-commerce senza andare ad utilizzare piattaforme come magento o altre,

    vorrei far così: per esempio ho un tag a di nome Aggiungi al carrello

    dopo che faccio click si dovrebbe aggiungere quel prodotto al carrello ovviamente, questo prodotto è all'interno di un database

    ma il carrello a livello di codifica come lo devo pensare? mi conviene pensare al carrello come una tabella di un database?

    spero che qualcuno mi sappia dare qualche consiglio a riguardo o magari qualche guida utile

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    Fallo come un array di prodotti (array di array) e mettilo in sessione.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    scusa ma non ho capito bene

    so cosa è l'array ma non riesco a concretizzare mentalmente come potrebbe essermi utile potresti spiegarti meglio?

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    Codice PHP:
    array (
                array (
                            
    'id' => 213,
                            
    'marca' => 'pippo',
                            
    'modello' => 'blabla',
                            
    'prezzo' => 40
                       
    ),
                array (
                            
    'id' => 98,
                            
    'marca' => 'pluto',
                            
    'modello' => 'blablabla',
                            
    'prezzo' => 78
                       
    )
    ); 
    metti questo array in sessione e quando apri la pagina del carrello mostri il contenuto dell'array.
    Ovviamente puoi metterci dentro i dati che vuoi, questo è un esempio.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    grazie mille della spiegazione mi sono andato pure a ripassare la lezione sugli array in php che non mi ricordavo praticamente nulla

    adesso provo a vedere se riesco a mettere in pratica ciò che intendo fare...

    grazie mille !

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    ho fatto una prova...

    ho fatto così allora io premo il tag Aggiungi al carrello

    dentro il file agg_carrello.php c'è scritto

    Codice PHP:
    <?php
    $con
    =mysql_connect(...................);
    if(!
    $con){
      die(
    'Impossibile connettersi a: ' mysql_error());
    }
    mysql_select_db(..........);
    $id=$_POST['id'];
    $nome=$_POST['nome'];
    $prezzo=$_POST['prezzo'];
    $nome=mysql_real_escape_string($nome);
    $prezzo=mysql_real_escape_string($prezzo);
    $sql="INSERT INTO prodotto (id, nome, prezzo, descrizione) VALUES ('$id','$nome','$prezzo', '".addslashes($_POST[descrizione])."')";

    $carrello=array('nome' => '.$nome.','prezzo' => '.$prezzo.');

    echo 
    $carrello['nome'];

    if(!
    mysql_query($sql,$con)){
      die(
    'Errore: ' mysql_error());
    }
    mysql_close($con);

    ?>
    non mi da nessun errore però a video mi stampa:

    .$nome.

    in poche parole non passa i valori, come mai?

    il tag <a>aggiungi carrello</a> non si trova dentro nessun form premesso questio, dove sbaglio?

  7. #7
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    Ti stampa .$nome. perché non puoi mettere una variabile dentro gli apici singoli, viene interpretata come una stringa non come una variabile.

    Puoi usare un tag <a> per aggiungere un prodotto al carrello, ma all'indirizzo del tag <a> devi appendere quantomeno l'id del prodotto, recuperarlo nello script PHP, effettuare una query verso il database per prendere i dati del prodotto usando il suo id e mettere i dati nell'array.

    $id=$_POST['id'];
    $nome=$_POST['nome'];
    $prezzo=$_POST['prezzo'];
    dov'è il form che invia questi dati?


    Secondo me non hai proprio le conoscenze adatte a realizzare un carrello, dovresti prima studiarti meglio come funziona PHP, così sbatterai solo la testa contro un muro e ci perderai tanto tempo e salute...

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    si scusa hai ragione il tag <a> tel'ho mandato singolo, allora adesso ti spiego un attimo come ho impostato il codice

    Codice PHP:
    <?php
    $con
    =mysql_connect(........);
    if(!
    $con){
      die(
    'Impossibile connettersi a: ' mysql_error());
    }
    mysql_select_db(............);
    $id=$_POST['id'];
    $nome=$_POST['nome'];
    $prezzo=$_POST['prezzo'];
    $nome=mysql_real_escape_string($nome);
    $prezzo=mysql_real_escape_string($prezzo);
    $sql="INSERT INTO prodotto (id, nome, prezzo, descrizione) VALUES ('$id','$nome','$prezzo', '".addslashes($_POST[descrizione])."')";
    if (isset(
    $_POST['upload_pdf'])){
    $pdfDirectory "prodotti/";
    $filename=$_FILES['filepdf']['name'];
    $filename=$nome;
    $filename basename$filename".jpg");
    $filename preg_replace("/[^A-Za-z0-9_-]/"" "$filename).".jpg";
    if(
    move_uploaded_file($_FILES['filepdf']['tmp_name'], $pdfDirectory.$filename)) {
      
    $pdfWithPath $pdfDirectory.$filename;
      }
    }

    $descrizione=nl2br($_POST[descrizione]);
    $fp=fopen('prodotti/'.$nome.'.php','w');
    QUI INIZIA LA COSTRUZIONE DEL FILE IN CUI è COMPRESO IL FAMOSO TAG <A>
    Codice PHP:
    fwrite($fp,
    "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
    <html xmlns=\"http://www.w3.org/1999/xhtml\">
    <head>
    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />
    <title>La Serenissima - Scheda prodotto</title>
    <link rel=\"shortcut icon\" href=\"/images/logo_short.PNG\" type=\"image/x-icon\" />
    <link rel=\"stylesheet\" type=\"text/css\" href=\"/style.css\" />
    </head>
    <body class=\"corpo\">
    <div id=\"container\">
      <div id=\"header\">
        <img src=\"/images/logo.PNG\" alt=\"La Serenissima\" style=\"width:303;height:293;margin-top:20px;margin-bottom:10px;\" />
      </div>
      <div id=\"tmenu\">
        <ul id=\"topmenu\">[*]<a href=\"/index.php\">HOME</a>[*]<a id=\"click\" href=\"/prodotti.php\">PRODOTTI</a>[*]<a href=\"/eventi.php\">EVENTI</a>[*]<a href=\"/chisiamo.php\">CHI SIAMO</a>[*]<a href=\"/contatti.php\">CONTATTI</a>[/list]
      </div>
      <div id=\"main\">
        <div>
          <h3>Scheda prodotto</h3>
          
    <u>
    $nome</u>
          

        </div>
        


          <a href=\"/prodotti.php\">Torna ai Prodotti</a> 
    ECCO IL TAG <A> CHE CI INTERESSA è IL SEGUENTE
    Codice PHP:
          &nbsp&nbsp[b]|[/b]&nbsp&nbsp<a href=\"/agg_carrello.php\">Aggiungi al carrello</a>
        </p>
        


          Prezzo equivalente ad una quantità: 
    $prezzo €
          


          <a href=\"/
    $pdfWithPath\" target=\"_blank\"><img style=\"clear:both;float:right;margin-bottom:20px;border:2px solid #c9c9fb;\" src=\"/$pdfWithPath\" title=\"fare click per ingrandire\" width=\"220\" height=\"320\" /></a>$descrizione
          



        </p>
      </div>
      <div id=\"footer\">
        

    <a href=\"/admin.php\">[b]Amministrazione[/b]</a> | [b]Powered by[/b] <a href=\"http://francescopassanante.eu\" target=\"_blank\">Francesco Passanante</a></p>
      </div>
    </div>
    </body>"
    );
    fclose($fp);
    if(!
    mysql_query($sql,$con)){
      die(
    'Errore: ' mysql_error());
    }
    mysql_close($con);
    header("Location:/prodotti.php");
    ?> 

    questa in conclusione è la pagina dove aggiungo il prodotto, qui è presente il form e la creazione della pagina del prodotto, premendo il tag <a> aggiungi al carrello entra in gioco la pagina invece che ti ho postato nel messaggio precedente...

    spero che il codice sia di aiuto magari nell'aiutarmi a capire dove sbaglio,

    tu dici che se io mettessi al tag <a> un id e passassi l'id del tag anzichè il $nome che è l'equivalente del nome del prodotto? per una questione di apici? io quando scrivo dentro l'array se scrivo una stringa la metto fra gli apici la var $nome è una stringa e nell'array l'ho inserita fra gli apici e quindi non capisco dove sbaglierei? nell'array devo inserire il nome del prodotto e il prezzo non l'id...

  9. #9
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    E' tutto molto confuso.

    Ti ripeto, prima di fare una cosa simile, impara meglio il PHP.

    Una variabile è una variabile, non è né un numero, né una stringa, quindi se fai
    Codice PHP:
    $var 'casa';

    //questo stampa $var perché la variabile non viene valutata
    echo '$var';

    //questo stampa casa perché valuta la variabile, ma metterci i doppi apici è superfluo
    echo "$var";

    //stampa casa ed è il modo corretto
    echo $var;

    //quindi se dovessi metterla in un array

    $array = array ('nome' => $var); //senza apici 
    Per il resto, ti consiglio di trovare un tutorial perché non c'è da correggere qualche errore, sarebbe proprio da rifare tutto.

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2011
    residenza
    bergamo
    Messaggi
    1,027
    non capisco cosa ci sia di confuso nel codice

    comunque il nome che passavo è una stringa se guardi il codice che ti ho postato si capisce c'è la dichiarazione di stringa

    comunqe siccome quando ho dichiarato l'array senza apici e poi l'ho richiamata la stringa non mi ha restituito niente forse non passa i parametri, e non capisco perchè non li passa...

    sul discorso dell'impara il php scusa ma io il php non sarò un mostro ma lo so capiterà di avere qualche intoppo no? ecco io qui ho un intoppo chiedevo a qualcuno se mi aiutava a capire perchè non mi passa la stringa $nome visto che sul file dove creo l'fopen la passa e invece sul file che chiamo tramite il tag <a> non la passa. tutto qui.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.