<li id="cv5ab"><xmp id="cv5ab"><i id="cv5ab"></i>
  • <li id="cv5ab"><meter id="cv5ab"></meter></li>
    <li id="cv5ab"><tbody id="cv5ab"></tbody></li>
    \r\n

    用戶名:<\/p>\r\n

    密碼:<\/p>\r\n\r\n<\/body>\r\n

    国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

    首頁(yè) web前端 js教程 Ajax PHP session制作購(gòu)物車_AJAX相關(guān)

    Ajax PHP session制作購(gòu)物車_AJAX相關(guān)

    Jun 28, 2017 pm 01:53 PM
    ajax session

    這篇文章主要為大家詳細(xì)介紹了Ajax結(jié)合PHP session制作購(gòu)物車,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

    購(gòu)物車網(wǎng)頁(yè)代碼,具體內(nèi)容如下

    1.登錄界面login.php

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script src="../jquery-1.11.2.min.js"></script>
    <title>無(wú)標(biāo)題文檔</title>
    </head>
    
    <body>
    <p>用戶名:<input type="text" id="uid" /></p>
    <p>密碼:<input type="text" id="pwd" /></p>
    <input type="button" value="登錄" id="btn" />
    </body>
    <script type="text/javascript">
    $("#btn").click(function(){
      var uid = $("#uid").val();
      var pwd = $("#pwd").val();
      $.ajax({
          url:"loginchuli.php",
          data:{u:uid,p:pwd},
          type:"POST",
          dataType:"TEXT",
          success: function(data){
            if(data.trim()=="OK")
            {
              window.location.href="main.php" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ;
            }
            else
            {
              alert("用戶名或密碼錯(cuò)誤");
            }
          }
        })
      })
    </script>
    </html>

    2.登錄處理頁(yè)面loginchuli.php

    <?php
    session_start();
    
    include("../DBDA.class.php");
    $db = new DBDA();
    $uid = $_POST["u"];
    $pwd = $_POST["p"];
    $sql = "select password from login where username=&#39;{$uid}&#39;";
    $mm = $db->StrQuery($sql);
    if($mm==$pwd && $pwd!="")
    {
      $UserName = $_POST["uid"];
      $_SESSION["uid"]=$uid;
      echo "OK";
    }
    else
    {
      echo "NO";
    }

    3.主頁(yè)面main.php

    <?php
    session_start();
    include("../DBDA.class.php");
    $db = new DBDA();
    ?>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>無(wú)標(biāo)題文檔</title><br />
    <style type="text/css">
    .list{ width:100%; height:30px; margin-top:10px; text-align:center; line-height:30px; vertical-align:middle}
    </style>
    </head>
    <body>
    <p style="width:100%; height:100px; background-color:#6CC">
      <h1 style="float:left">大蘋果商城</h1>
      <a style="float:right; margin-top:40px" href="zhuxiao.php">注銷</a>
    </p>
    <br />
    <p style="width:100%; height:600px">
      <p id="left" style="width:20%; float:left">
        <a href="main.php"><p class="list">瀏覽商品</p></a>
        <a href="zhanghu.php"><p class="list">查看賬戶</p></a>
        <a href="gouwuche.php"><p class="list">查看購(gòu)物車</p></a>
      </p>
      
      <p id="right" style="width:80%; float:left">
    
    <?php
      $agwc = array();
      if(!empty($_SESSION["gwc"]))
      {
        $agwc = $_SESSION["gwc"];
      }
      $zhonglei = count($agwc);
      $sum = 0;
      foreach($agwc as $v)
      {
        $sql = "select price from fruit where ids=&#39;{$v[0]}&#39;";
        $danjia = $db->StrQuery($sql);
        $sum = $sum +$danjia*$v[1];
      }
      echo "<p>購(gòu)物車中有:{$zhonglei}種商品,總價(jià)格為:{$sum}元.</p>";
      ?>
    
        <table width="100%" border="1" cellpadding="0" cellspacing="0">
        <tr>
          <td>代號(hào)</td>
          <td>水果名稱</td>
          <td>水果價(jià)格</td>
          <td>源產(chǎn)地</td>
          <td>庫(kù)存量</td>
          <td>操作</td>
        </tr>
    
     <?php   
        $sql = "select * from fruit";
        $attr = $db->Query($sql);
        
        foreach($attr as $v)
        {
          echo "<tr><td>{$v[0]}</td>
          <td>{$v[1]}</td>
          <td>{$v[2]}</td>
          <td>{$v[3]}</td>
          <td>{$v[4]}</td>
          <td><a href=&#39;goumai.php?code={$v[0]}&#39;>購(gòu)買</a></td></tr>";
        }
        ?>    
    
        </table>
      </p>
    </p>
    
    </body>
    </html>

    4.購(gòu)買處理頁(yè)面goumai.php

    <?php
    session_start();
    $code = $_GET["code"];
    
    if(empty($_SESSION["gwc"]))
    {
      //第一次點(diǎn)擊購(gòu)買
      $attr = array(
        array($code,1)
      );
      $_SESSION["gwc"] = $attr;
    }
    else
    {
      //不是第一次點(diǎn)擊購(gòu)買
      $attr = $_SESSION["gwc"];
      $bs=0;
      foreach($attr as $k=>$v)
      {
        if($v[0]==$code)
        {
          $bs=1;
          $attr[$k][1] = $attr[$k][1]+1;
        }
      }
      //如果沒(méi)有在數(shù)組里面出現(xiàn)
      if($bs==0)
      {
        $shuzu = array($code,1);
        $attr[] = $shuzu;
      }
      
      $_SESSION["gwc"]=$attr;
      
    }
    header("location:main.php");

    5.訂單處理頁(yè)面,計(jì)算選取水果的總價(jià),和水果剩余量。dingdan.php

    <?php
    session_start();
    include("../DBDA.class.php");
    $db = new DBDA();
    $uid = $_SESSION["uid"];
    $attr = array();
    if(!empty($_SESSION["gwc"]))
    {
      $attr = $_SESSION["gwc"];
    }
    //看下兩個(gè)條件是否都滿足
    $bs = true;
    
    //判斷余額是否滿足
      //根據(jù)用戶名找余額
      $syue = "select account from login where username=&#39;{$uid}&#39;";
      $yue = $db->StrQuery($syue);
      
      //根據(jù)購(gòu)物車數(shù)組取總金額
      $sum = 0;
      foreach($attr as $v)
      {
        $sql = "select price from fruit where ids=&#39;{$v[0]}&#39;";
        $danjia = $db->StrQuery($sql);
        $sum = $sum +$danjia*$v[1];
      }
      if($yue<$sum)
      {
        $bs = false;
        echo "YEBUZU";
        exit;
      }
      
    //判斷庫(kù)存是否滿足
    
    foreach($attr as $v)
    {
      $skucun = "select name,numbers from fruit where ids=&#39;{$v[0]}&#39;";
      $akucun = $db->Query($skucun);
      if($akucun[0][1]<$v[1])
      {
        $bs = false;
        echo "{$akucun[0][0]}庫(kù)存不足!";
        exit;
        
      }
    }
    
    //添加訂單,減庫(kù)存,減余額
    
    if($bs)
    {
      //減庫(kù)存
      foreach($attr as $v)
      {
        $sql = "update fruit set numbers = numbers-{$v[1]} where ids=&#39;{$v[0]}&#39;";
        $db->Query($sql,0);
      }
      
      //減余額
      $jianyue="update login set account=account-{$sum} where username=&#39;{$uid}&#39;";
      $db->Query($jianyue,0);
      
      //添加訂單
      $dingdanhao = $uid+date("YmdHis");
      $t = time();
      
      $sorder = "insert into orders values(&#39;{$dingdanhao}&#39;,&#39;{$uid}&#39;,&#39;{$t}&#39;)";
      $db->Query($sorder,0);
      
      foreach($attr as $v)
      {
        $sxq = "insert into orderdetails values(&#39;&#39;,&#39;{$dingdanhao}&#39;,&#39;{$v[0]}&#39;,&#39;{$v[1]}&#39;)";
        $db->Query($sxq,0);
      }
    }
    
    echo "OK";

    6.購(gòu)物車頁(yè)面

    <?php
    session_start();
    ?>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>無(wú)標(biāo)題文檔</title><br />
    <style type="text/css">
    .list{ width:100%; height:30px; margin-top:10px; text-align:center; line-height:30px; vertical-align:middle}
    </style>
    <script src="../../jquery-1.11.2.min.js"></script>
    </head>
    
    <body>
    <p style="width:100%; height:100px; background-color:#6CC">
      <h1 style="float:left">大蘋果商城</h1>
      <a style="float:right; margin-top:40px" href="zhuxiao.php">注銷</a>
    </p>
    <br />
    <p style="width:100%; height:600px">
      <p id="left" style="width:20%; float:left">
        <a href="main.php"><p class="list">瀏覽商品</p></a>
        <a href="zhanghu.php"><p class="list">查看賬戶</p></a>
        <a href="gouwuche.php"><p class="list">查看購(gòu)物車</p></a>
      </p>
      
      <p id="right" style="width:80%; float:left">
        <table width="100%" border="1" cellpadding="0" cellspacing="0">
        <tr>
          <td>商品名稱</td>
          <td>商品單價(jià)</td>
          <td>購(gòu)買數(shù)量</td>
          <td>操作</td>
        </tr>
    
    <?php
        include("../DBDA.class.php");
        $db = new DBDA();
        $attr=array();
        if(!empty($_SESSION["gwc"]))
        {
          $attr = $_SESSION["gwc"];
        }
        
        foreach($attr as $k=>$v)
        {
          $sql = "select name,price from fruit where ids=&#39;{$v[0]}&#39;";
          $ashuiguo = $db->Query($sql);
        
          echo "<tr><td>{$ashuiguo[0][0]}</td><td>{$ashuiguo[0][1]}</td><td>{$v[1]}</td><td><a href=&#39;shanchu.php?sy={$k}&#39;>刪除</a></td></tr>";
          
        }
        
        ?>
    
        </table>
        <p id="tj">提交訂單</p><p id="ts"></p>
      </p>
    </p>
    
    <script type="text/javascript">
    $("#tj").click(function(){
        $.ajax({
            url:"dingdan.php",
            dataType:"TEXT",
            success: function(data){
                if(data.trim()=="OK")
                {
                  alert("購(gòu)買成功");
                }
                else if(data.trim()=="YEBUZU")
                {
                  $("#ts").html("余額不足");
                  $("#ts").css("color","red");
                }
                else
                {
                  $("#ts").html(data);
                  $("#ts").css("color","red");
                }
              }
          });
      })
    </script>
    </body>
    </html>

    7.購(gòu)物車頁(yè)面刪除處理頁(yè)面shanchu.php

    <?php
    session_start();
    
    $sy = $_GET["sy"];
    
    $attr = $_SESSION["gwc"];
    
    if($attr[$sy][1]>1)
    {
      $attr[$sy][1] = $attr[$sy][1]-1;
    }
    else
    {
      unset($attr[$sy]);
      $attr = array_values($attr);
    }
    $_SESSION["gwc"]=$attr;
    
    header("location:gouwuche.php");
    
    8.賬戶余額頁(yè)面zhanghu.php
    
    
    <?php
    session_start();
    $uid = $_SESSION[&#39;uid&#39;];
    ?>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>無(wú)標(biāo)題文檔</title><br />
    <style type="text/css">
    .list{ width:100%; height:30px; margin-top:10px; text-align:center; line-height:30px; vertical-align:middle}
    </style>
    </head>
    <body>
    <p style="width:100%; height:100px; background-color:#6CC">
      <h1 style="float:left">大蘋果商城</h1>
      <a style="float:right; margin-top:40px" href="zhuxiao.php">注銷</a>
    </p>
    <br />
    <p style="width:100%; height:600px">
      <p id="left" style="width:20%; float:left">
        <a href="main.php"><p class="list">瀏覽商品</p></a>
        <a href="zhanghu.php"><p class="list">查看賬戶</p></a>
        <a href="gouwuche.php"><p class="list">查看購(gòu)物車</p></a>
      </p>  
      <p id="right" style="width:80%; height:150px; float:left">
    
    <?php
        include("../DBDA.class.php");
        $db = new DBDA();
        $sql = "select Account from login where UserName=&#39;{$uid}&#39;";
        $result = $db->strQuery($sql);
        
        echo ("您的賬戶中還剩余".$result);
      ?>
    
      </p>
    </p>
    
    </body>
    </html>

    以上是Ajax PHP session制作購(gòu)物車_AJAX相關(guān)的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

    本站聲明
    本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請(qǐng)聯(lián)系admin@php.cn

    熱AI工具

    Undress AI Tool

    Undress AI Tool

    免費(fèi)脫衣服圖片

    Undresser.AI Undress

    Undresser.AI Undress

    人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

    AI Clothes Remover

    AI Clothes Remover

    用于從照片中去除衣服的在線人工智能工具。

    Clothoff.io

    Clothoff.io

    AI脫衣機(jī)

    Video Face Swap

    Video Face Swap

    使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

    熱工具

    記事本++7.3.1

    記事本++7.3.1

    好用且免費(fèi)的代碼編輯器

    SublimeText3漢化版

    SublimeText3漢化版

    中文版,非常好用

    禪工作室 13.0.1

    禪工作室 13.0.1

    功能強(qiáng)大的PHP集成開(kāi)發(fā)環(huán)境

    Dreamweaver CS6

    Dreamweaver CS6

    視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神級(jí)代碼編輯軟件(SublimeText3)

    熱門話題

    Laravel 教程
    1601
    29
    PHP教程
    1502
    276
    PHP 與 Ajax:構(gòu)建一個(gè)自動(dòng)完成建議引擎 PHP 與 Ajax:構(gòu)建一個(gè)自動(dòng)完成建議引擎 Jun 02, 2024 pm 08:39 PM

    使用PHP和Ajax構(gòu)建自動(dòng)完成建議引擎:服務(wù)器端腳本:處理Ajax請(qǐng)求并返回建議(autocomplete.php)。客戶端腳本:發(fā)送Ajax請(qǐng)求并顯示建議(autocomplete.js)。實(shí)戰(zhàn)案例:在HTML頁(yè)面中包含腳本并指定search-input元素標(biāo)識(shí)符。

    解決jQuery AJAX請(qǐng)求403錯(cuò)誤的方法 解決jQuery AJAX請(qǐng)求403錯(cuò)誤的方法 Feb 19, 2024 pm 05:55 PM

    jQuery是一個(gè)流行的JavaScript庫(kù),用于簡(jiǎn)化客戶端端的開(kāi)發(fā)。而AJAX則是在不重新加載整個(gè)網(wǎng)頁(yè)的情況下,通過(guò)發(fā)送異步請(qǐng)求和與服務(wù)器交互的技術(shù)。然而在使用jQuery進(jìn)行AJAX請(qǐng)求時(shí),有時(shí)會(huì)遇到403錯(cuò)誤。403錯(cuò)誤通常是服務(wù)器禁止訪問(wèn)的錯(cuò)誤,可能是由于安全策略或權(quán)限問(wèn)題導(dǎo)致的。在本文中,我們將討論如何解決jQueryAJAX請(qǐng)求遭遇403錯(cuò)誤

    解決jQuery AJAX請(qǐng)求遇到403錯(cuò)誤的方法 解決jQuery AJAX請(qǐng)求遇到403錯(cuò)誤的方法 Feb 20, 2024 am 10:07 AM

    標(biāo)題:解決jQueryAJAX請(qǐng)求出現(xiàn)403錯(cuò)誤的方法及代碼示例403錯(cuò)誤是指服務(wù)器禁止訪問(wèn)資源的請(qǐng)求,通常會(huì)導(dǎo)致出現(xiàn)這個(gè)錯(cuò)誤的原因是請(qǐng)求缺少權(quán)限或者被服務(wù)器拒絕。在進(jìn)行jQueryAJAX請(qǐng)求時(shí),有時(shí)候會(huì)遇到這種情況,本文將介紹如何解決這個(gè)問(wèn)題,并提供代碼示例。解決方法:檢查權(quán)限:首先要確保請(qǐng)求的URL地址是正確的,同時(shí)驗(yàn)證是否有足夠的權(quán)限來(lái)訪問(wèn)該資

    如何解決jQuery AJAX報(bào)錯(cuò)403的問(wèn)題? 如何解決jQuery AJAX報(bào)錯(cuò)403的問(wèn)題? Feb 23, 2024 pm 04:27 PM

    如何解決jQueryAJAX報(bào)錯(cuò)403的問(wèn)題?在開(kāi)發(fā)網(wǎng)頁(yè)應(yīng)用程序時(shí),經(jīng)常會(huì)使用jQuery來(lái)發(fā)送異步請(qǐng)求。然而,有時(shí)候在使用jQueryAJAX時(shí)可能會(huì)遇到錯(cuò)誤代碼403,表示服務(wù)器禁止訪問(wèn)。這種情況通常是由服務(wù)器端的安全設(shè)置所導(dǎo)致的,但可以通過(guò)一些方法來(lái)解決這個(gè)問(wèn)題。本文將介紹如何解決jQueryAJAX報(bào)錯(cuò)403的問(wèn)題,并提供具體的代碼示例。一、使

    PHP 與 Ajax:創(chuàng)建動(dòng)態(tài)加載內(nèi)容的解決方案 PHP 與 Ajax:創(chuàng)建動(dòng)態(tài)加載內(nèi)容的解決方案 Jun 06, 2024 pm 01:12 PM

    Ajax(異步JavaScript和XML)允許在不重新加載頁(yè)面情況下添加動(dòng)態(tài)內(nèi)容。使用PHP和Ajax,您可以動(dòng)態(tài)加載產(chǎn)品列表:HTML創(chuàng)建一個(gè)帶有容器元素的頁(yè)面,Ajax請(qǐng)求加載數(shù)據(jù)后將數(shù)據(jù)添加到該元素中。JavaScript使用Ajax通過(guò)XMLHttpRequest向服務(wù)器發(fā)送請(qǐng)求,從服務(wù)器獲取JSON格式的產(chǎn)品數(shù)據(jù)。PHP使用MySQL從數(shù)據(jù)庫(kù)查詢產(chǎn)品數(shù)據(jù),并將其編碼為JSON格式。JavaScript解析JSON數(shù)據(jù),并將其顯示在頁(yè)面容器中。點(diǎn)擊按鈕觸發(fā)Ajax請(qǐng)求,加載產(chǎn)品列表。

    如何使用Ajax從PHP方法中獲取變量? 如何使用Ajax從PHP方法中獲取變量? Mar 09, 2024 pm 05:36 PM

    使用Ajax從PHP方法中獲取變量是Web開(kāi)發(fā)中常見(jiàn)的場(chǎng)景,通過(guò)Ajax可以實(shí)現(xiàn)頁(yè)面無(wú)需刷新即可動(dòng)態(tài)獲取數(shù)據(jù)。在本文中,將介紹如何使用Ajax從PHP方法中獲取變量,并提供具體的代碼示例。首先,我們需要編寫一個(gè)PHP文件來(lái)處理Ajax請(qǐng)求,并返回所需的變量。下面是一個(gè)簡(jiǎn)單的PHP文件getData.php的示例代碼:

    PHP 與 Ajax:提高 Ajax 安全性的方法 PHP 與 Ajax:提高 Ajax 安全性的方法 Jun 01, 2024 am 09:34 AM

    為了提升Ajax安全性,有幾種方法:CSRF保護(hù):生成令牌并將其發(fā)送到客戶端,在請(qǐng)求中添加到服務(wù)器端進(jìn)行驗(yàn)證。XSS保護(hù):使用htmlspecialchars()過(guò)濾輸入,防止惡意腳本注入。Content-Security-Policy頭:限制惡意資源加載,指定允許加載腳本和樣式表的來(lái)源。驗(yàn)證服務(wù)器端輸入:驗(yàn)證從Ajax請(qǐng)求接收的輸入,防止攻擊者利用輸入漏洞。使用安全Ajax庫(kù):利用jQuery等庫(kù)提供的自動(dòng)CSRF保護(hù)模塊。

    通過(guò)使用Ajax函數(shù)實(shí)現(xiàn)異步數(shù)據(jù)交換的方法 通過(guò)使用Ajax函數(shù)實(shí)現(xiàn)異步數(shù)據(jù)交換的方法 Jan 26, 2024 am 09:41 AM

    如何利用Ajax函數(shù)實(shí)現(xiàn)異步數(shù)據(jù)交互隨著互聯(lián)網(wǎng)和Web技術(shù)的發(fā)展,前端與后端之間的數(shù)據(jù)交互變得十分重要。傳統(tǒng)的數(shù)據(jù)交互方式,如頁(yè)面刷新和表單提交,已經(jīng)不能滿足用戶的需求。而Ajax(AsynchronousJavaScriptandXML)則成為了實(shí)現(xiàn)異步數(shù)據(jù)交互的重要工具。Ajax通過(guò)使用JavaScript和XMLHttpRequest對(duì)象,使得網(wǎng)

    See all articles