IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Sécurité] stop achat si pas loggué ou non inscrit


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Points : 575
    Points
    575
    Par défaut [Sécurité] stop achat si pas loggué ou non inscrit
    bonjour!
    je creé un projet de site qui vends des produits informatiques
    pour pouvoir acheter sur ce site, l'utilisateur doit avoir préalablement être inscrit sur le site et donc être logué
    mais j'aimerais beaucoup empecher l'utilisateur non loggué ou non inscrit de mettre dans un panier des produit, lorsqu'il clique sur un image "ajouter au panier"
    il faudrais donc un message qui l'indique

    voici mon code :
    [code]

    <?php
    if (!session_id())
    session_start();



    if(!($base=mysql_connect("localhost","root","")))
    {
    echo "<br><B>probleme lors de la connexion à MySql</B><br>";
    exit();
    }
    else
    {
    mysql_select_db("bd_info", $base);

    $sql1 = "SELECT stock_produit FROM produit WHERE ref_produit = 1";
    $result1 = mysql_query($sql1) or die("ERREUR: La requête n'est pas valide: ".mysql_error());

    $row1 = mysql_fetch_array($result1);
    $stock1 = $row1['stock_produit'];


    if ($stock1 == 0) {
    echo "<p><b>HP Pavilion t759.fr + écran f1723 17 pouces TFT + appareil photo numérique Photosmart R707 stock epuisé</b></p>"; }

    }
    }

    echo"<html>

    <title>Les ordinateurs de bureau</title>
    <head>

    </script>
    <center><u><font size=+3>Les ordinateurs de bureau</center></font></head></u> <br><br><br>
    <font face=comic sans ms align=left><a href='accueil.htm'>Retour à l'accueil</font></a><br><br>

    <center><font size=+2 color=brown><b><u>HP Pavilion t759.fr + écran f1723 17 pouces TFT + appareil photo numérique Photosmart R707</u></b></center></font>

    <br><br><center><img src ='ordinateur de bureau1.JPG'>

    <p><b><u>Caracteristiques</u> : Processeur : Intel Pentium 4 540 à 3,20 GHz avec technologie Hyper-Threading.<br> Mémoire vive : 512 Mo.<br> Disque dur : 200 Go
    <br>Lecteur DVD-ROM et de carte 9 en 1.<br> Graveur CD/DVD biformat double couche<br>
    <center><u><b><p><font color=grey size = +2 >Prix : 1599 € TTC</p></u></b></font></center>




    <center><form method = POST action='http://127.0.0.1/oceanecoin/boutiqueinfo/commandeinfo.php'></center><br>
    <center><b>quantité:</b>
    <select name=quantite>
    <option value='1' selected>1
    <option value='2'>2</option>
    <option value='3'>3</option>
    <option value='4'>4</option>
    <option value='5'>5</option>
    <option value='6'>6</option>
    <option value='7'>7</option>
    <option value='8'>8</option>
    <option value='9'>9</option>
    <option value='10'>10</option>
    </select>
    </td>
    </tr>
    <tr>
    <td>
    <center><input type=image name=ajouter src='http://127.0.0.1/oceanecoin/boutiqueinfo/ajouter.gif'>

    </html>

    </td>
    </tr>
    </table>
    <center><input type = \"hidden\" name=\"article\" value=\"HP Pavilion t759.fr + écran f1723 17 TFT + appareil photo numérique Photosmart R707\">
    </form>
    </td>
    </b></p></center><br><br>
    <td align='center'>
    <table>
    </b></p></center><br><br>

    <p><font color = \"red\" size=+1><b><i><u>Fiche technique</p></font></b></u></i>
    <table border=\"8\">
    <tr>
    <td><u><b><font color=\"blue\"> Constructeur</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">Hewlett Packard</font> </td>
    </tr>
    <tr>
    <td><u><b><font color=\"blue\">Type de boîtier</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">Mini Tour</font> </td>
    </tr>
    <tr>
    <td><u><b><font color=\"blue\">Microprocesseur</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">Intel Pentium 4 HT</font> </td>
    </tr>
    <tr>
    <td><u><b><font color=\"blue\">Fréquence du processeur / Fréquence de Bus</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">3,20 GHz / 800 MHz</font> </td>
    </tr>
    <tr>
    <td><u><b><font color=\"blue\">Chipset</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">Intel 915P Express</font> </td>
    </tr>
    <tr>
    <td><u><b><font color=\"blue\">Mémoire cache externe</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">1 Mo de niveau 2</font> </td>
    </tr>
    <tr>
    <td><u><b><font color=\"blue\">Taille mémoire vive installée / mémoire maximale</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">512 Mo DDR / 4 Go</font> </td>
    </tr>
    <tr>
    <td><u><b><font color=\"blue\">Capacité disque dur / vitesse de rotation</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">200 Go SATA (dont 5 Go réservés au système de restauration) / 7200 tours/min</font> </td>
    </tr>
    <tr>
    <td><u><b><font color=\"blue\">Lecteur de cartes mémoire</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">9 en 1</font> </td>
    </tr>
    <tr>
    <td><u><b><font color=\"blue\">Lecteur de disquettes 3,5 pouces</b></u>:&nbsp;&nbsp;&nbsp;</font><font color=\"green\">non</font> </td>
    </tr>
    <tr>
    </table>
    <br><br><br><br><br><br>
    </table>
    </body>
    </html>";
    ?>

    (/code]

    merci de votre aide

  2. #2
    Membre habitué Avatar de Cobaye
    Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    120
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 120
    Points : 154
    Points
    154
    Par défaut
    Ben si la personne s'inscrit ou se logue tu met son identifiant en session, et pour arrêté l'achat tu teste si cette varaible est remplis ou pas ! si elle l'ai pas tu stop !
    Pro : http://www.ohweb.fr -> Spécialiste en développement de site e-commerce, Expert Prestashop
    perso : http://www.olecorre.com -> un dico de termes informatiques


    J'ai toujours rêvé d'un ordinateur qui soit aussi facile à utiliser qu'un téléphone. Mon rêve s'est réalisé : je ne sais plus comment utiliser mon téléphone. [Bjarne Stroustrup]

  3. #3
    Membre confirmé Avatar de KibitO
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 616
    Points : 606
    Points
    606
    Par défaut
    J'adore les scripts hors des tags, on n'est pas des cobayes tout de meme !!

  4. #4
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Citation Envoyé par KibitO
    on n'est pas des cobayes tout de meme !!
    Sauf celui qui a posté avant toi.


    Je suis déjà sorti

  5. #5
    Membre confirmé Avatar de KibitO
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2004
    Messages
    616
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2004
    Messages : 616
    Points : 606
    Points
    606
    Par défaut
    Bordel !

    Là c'est LOL quand meme

    Ce que j'écris peut venir de ce que j'ai aperçu juste avant, entre autre le pseudo d'un memebre... Pouahhh, dsl Cobaye.

    Retour au sujet :

    pour éviter de mettre dans le panier si on n'est pas loggé, autant afficher la page d'identification au moment de cette action. Bien entendu, si l'utilisateur est identifié, cette page n'apparaitra pas et il tombera directement dans la page de son panier, ou autre (ceci n'est qu'un exemple).

  6. #6
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Océane, quel est le code de commandeinfo.php ?

  7. #7
    Membre confirmé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Points : 575
    Points
    575
    Par défaut
    alors le voici "commandeinfo.php"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
     
    <?
     
    include ("definitioninfo.php");
    include ("aff_panier.inc.php");
     
    if (!session_id())
     session_start();
     
     
     
    if (!isset($_SESSION['panier']))    //$panier pas defini              //sert pour la gestion du panier
    {                                                           //ne pas tenir compte pr le moment
     $panier = array (
      "ref_produit" => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23),
      "quantite"  => array (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
     );
     $_SESSION['panier'] = $panier;
     $_SESSION['total'] = 0;
      }
     
    session_register('article');
    session_register('prix');
    session_register('quantite');
    session_register('ref_produit');
    //$_POST['quantite']= $_SESSION['quantite'];
     // $_POST['article'] = $_SESSION['article'];
     
    for ($i = 0; $i < 23; $i++)                                          //pr le panier
    {
     //echo("article : ".$_SESSION['panier']['ref_produit'][$i]);
     //echo(" quantite : ".$_SESSION['panier']['quantite'][$i]."<br>");
    }
     
     
    $quantite = $_POST['quantite'];
    $article = $_POST['article'];
    ///echo "quantite post = ".$quantite;
     
     
     
     
    if(!($base=mysql_connect("localhost","root","pouet")))
    {
     echo "<br><B>probleme lors de la connexion à MySql</B><br>";
     exit();
    }
    else
    {
     mysql_select_db(BASE, $base);
     if (($tab_com = mysql_query("SELECT ref_produit, designation_produit, prix_produit
                   	 	      FROM produit
            		      WHERE designation_produit = '".$article."'", $base)))
    $res_com = mysql_fetch_array($tab_com);   //tableau contenant les valeurs de la requete (resultat_commande)
    }
     
    $_SESSION['article'] = $res_com[1];
    $_SESSION['prix'] = $res_com[2];
    $_SESSION['quantite'] = $quantite;
    $_SESSION['ref_produit']= $res_com[0];
     
    //$_SESSION['panier']['quantite'][$_SESSION['ref_produit']]++;            //pr le panier
    $_SESSION['panier']['quantite'][$_SESSION['ref_produit']] = $_SESSION['panier']['quantite'][$_SESSION['ref_produit']]+$quantite;
     
    $_SESSION['total'] = $_SESSION['total']+($res_com[2]*$quantite);
    //$_SESSION['TTC'] = $_SESSION['total']+ $_SESSION['total']*(19.6/100); // à aligner a droite
     
     
     
     
    echo "<html>
    <head>
    <title>Bienvenue sur materiel-informatique.fr</title></head>
    <body bgcolor=#99ff99  align=right>
    <h1 align=\"center\"><font size=+6><font color=\"#000000\"><u>Votre Panier de Commande :</u></font></font></h1>
    <br>
    <p><form method = \"POST\" action=\"http://127.0.0.1/oceanecoin/SITE%20INFO/ordinateur%20de%20bureau.php\"><input type='submit' value='<<<<<< poursuivre mes achats'></form></p>
    <table border=\"1\">
    <align=\"center\">
    
     <tr>
    
     <td><b><center>Reference </b></td><br>
      <td><b><center>Article</b></td><br>
      <td><b><center>Prix Unitaire</b></td>
      <td><b><center>Quantité</b></td>
      <td><b><center>Montant</b></td>
    
    
      <td><b><center><img src ='http://127.0.0.1/oceanecoin/SITE%20INFO/corbeille.gif'></td>
    
    
     </tr>";
     //<a href='supprime.php'=$_SESSION['panier']['ref_produit'][$i]>'supprimer'</a>
     
    aff_panier(); //fonction de gestion du panier
    /*echo " <tr  align=\"center\">
      <td><b>".$res_com[1]."</b></td>
      <td><b>".$res_com[2]."</b></td>
      <td><b>".$quantite."</b></td>
      <td><b>".$res_com[2]*$quantite." €</b></td>
     </tr>";*/
     
     echo "<tr><td></td><td></td><td><b><center>Total  : </b></td><td align = \"center\"><b>".$_SESSION['total']."€</b></td></tr>";
     //echo "<tr><td></td><td></td><td><b><center>TVA : </b></td><td align = \"right\"><b>".$_SESSION['total']*(19.6/100)."€</b></td></tr>";
     //echo "<tr><td></td><td></td><td><b><h3><center>TOTAL TTC : </b></td><td align = \"right\"><h3><u><b>".$_SESSION['TTC']."€</b></td></tr>";    //sert pour le panier
     //echo "<tr><td></td><td></td><td><b><u>TOTAL :</u></b></td><td align = \"right\"><b>".$res_com[2]*$quantite." €</b></td></tr>
     echo "<tr><td></td><td></td><td></td><td colspan='1'><form method = \"POST\" action=\"http://127.0.0.1/oceanecoin/boutiqueinfo/commande2info.php\"><input type='submit' value='Terminer votre Commande'></td></tr>
    
     </table>
    </form>
    </body>
    </html>"
    ?>
    mais je me demande si faire une alerte en javascript ne serait pas plus judicieux, qu'est ce que vous en pensez ?

    merci

  8. #8
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    ca change des rats !

    hum bon sinon, le alert n'empechera pas d'ajouter au panier.

    Le mieux que tu ai a faire a mon avis est de tester une variable de session du genre l'id utilisateur qui n'y sera qu'apres une authent.

    Si elle existe pas, tu redirige vers une page de ton choix
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

Discussions similaires

  1. stop() ne fonctionne pas dans mon animation
    Par edzodzinam dans le forum Flash
    Réponses: 1
    Dernier message: 03/07/2009, 12h43
  2. "tomcat stop" n'arrête pas réellement tomcat
    Par jreeman dans le forum Tomcat et TomEE
    Réponses: 8
    Dernier message: 24/09/2008, 20h26
  3. this.stop() ça devrait pas être compliqué
    Par leeftye dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 24/09/2007, 14h59
  4. [cargo:stop] ne fonctionne pas avec Jboss 4
    Par vain_mich dans le forum Maven
    Réponses: 2
    Dernier message: 16/08/2007, 09h32
  5. Arreter chargement d'une page ? (stop() ne marche pas sous IE)
    Par Merfolk dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 23/01/2007, 15h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo