contoh aplikasi php SESSION (troli beli-belah)

Contoh aplikasi SESI

Contoh log masuk: (sila ambil perhatian bahawa anda mesti menaipnya sendiri, tiada kaedah CV)
Pertama, lihat carta keputusan untuk merangsang keinginan pelajar untuk menulis halaman log masuk adalah seperti berikut:

document_2015-09-04_55e9473ab4ec7.png

Terangkan apa masalahnya. Seterusnya, laksanakan sendiri.
Maklumat pangkalan data pertama:
Buat pangkalan data baharu bernama log masuk, dan kemudian buat jadual pengguna Struktur jadual adalah seperti berikut:

document_2015-09-04_55e9487784049.png

log masuk. php

<?php
session_start();
if ( ( $_POST['username'] != null ) && ( $_POST['password'] != null ) ) {
   $userName = $_POST['username'];
   $password = $_POST['password'];

   //从db获取用户信息   数据库信息改成自己的
   $conn = mysqli_connect('host','username','password','login');
   $res = mysqli_query($conn,"select * from user where `username` =  '$username' ");
   $row = mysqli_fetch_assoc($res);
   if ($row['password'] == $password) {
       //密码验证通过,设置session,把用户名和密码保存在服务端
       $_SESSION['username'] = $username;
       $_SESSION['password'] = $password;

       //最后跳转到登录后的欢迎页面 //注意:这里我们没有像cookie一样带参数过去
       header('Location: welcome.php');
   }
}

?>
<html>
<head>
<!-- 这里指明页面编码 -->
<meta charset="utf-8">
</head>
<body>
   <form action="" method="POST">
       <div>
           用户名:<input type="text" name="username" />
           密  码:<input type="text" name="password" />
           <input type="submit" value="登录">        
       </div>
   </form>
</body>
</html>

selamat datang.php Di sini kami menggunakan maklumat dalam sesi, bukannya membawa parameter dalam URL seperti kuki

<?php
session_start();
$username = $_SESSION['username'];
?>
<html>
<head>

</head>
<body>
   welcome,<?php echo $username;?>
</body>
</html>

Contoh troli beli-belah: (Sila ambil perhatian bahawa anda mesti menaipnya. sendiri, jangan CV Dafa)
Maklumat pangkalan data: Buat pangkalan data bernama ujian Terdapat jadual kedai dalam perpustakaan. >

Mula Mari kod!

document_2015-09-04_55e9496188de0.pnggoodsList.php Ini ialah halaman paparan produk, renderingnya adalah seperti berikut:

Jelaskan bahawa jika ini adalah kali pertama untuk membeli item, tambah maklumat produk pada troli beli-belah dan hitung jumlah harga. Jika dibeli semula, Klik untuk membeli, kuantiti item yang dibeli akan meningkat sebanyak 1, dan jumlah harga akan dikira semula. Lihat pautan troli beli-belah untuk pergi ke halaman troli beli-belah.

<?php
   $goods = array();
   //从数据库获取商品信息存入$goods二维数组
   $i = 0;
   //这里请换上自己的数据库相关信息
   $conn = mysqli_connect('host','username','password','test');
   $res = mysqli_query($conn,'select * from shop');
   //这里把商品信息放到$goods二维数组,每一维存的是单个
   //商品的信息,比如商品名、价格。
   while ($row = mysqli_fetch_assoc($res)) {
       $goods[$i]['id'] = $row['id'];
       $goods[$i]['name'] = $row['name'];
       $goods[$i]['price'] = $row['price'];
       $i++ ;
   }

?>
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
</head>
<body>
   <?php
   //取出商品信息显示在页面上,并添加购买功能
       foreach ($goods as $value) {
           echo ' 商品名 ' . $value['name'] . ' 价格 ' . $value['price'];
           echo "<a href=buy.php?name=" . $value['name'] . '&price=' . $value['price'] .">购买</a>";
           echo '<br />';
       }

   ?>
   <a href="shoppingCart.php">查看购物车</a>
</body>
</html>
buy.php Halaman ini melengkapkan fungsi pembelian dan kemudian melompat ke senarai produk sekali lagi. Tujuan utama adalah untuk memproses pembelian barang dalam sesi tersebut.
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
</head>
<body>
<?php
   //开启session
   session_start();

   //获取传过来的商品名和价格
   $name = $_GET['name'];
   $price = $_GET['price'];

   //把session中的商品信息和传过来的(刚买的)商品信息对比
   $goods = $_SESSION['goods'];
   if ($name == $goods[$name]['name']) {
       //买过的话,则总价格增加,相应商品数量增加
       $_SESSION['totalPrice'] += $price;
       $goods[$name]['number'] += 1;
   } else {
       //第一次买的话,将相应的商品信息添加到session中
       $goods[$name]['name'] = $name;
       $goods[$name]['price'] = $price;
       $goods[$name]['number'] += 1;
       $_SESSION['totalPrice'] += $price;
   }

   $_SESSION['goods'] = $goods;
   //购买处理完毕后跳转到商品列表
   header('location: goodsList.php');
?>
</body>
</html>

shoppingCart.php Halaman ini memaparkan produk, harga, jumlah harga dan maklumat lain dalam troli beli-belah.
Rendering adalah seperti berikut:


<html>
<head>
   <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
</head>
<body>
<?php
session_start();
//将session中的商品信息(即购物车中的商品)和总价显示到页面
$goods = $_SESSION['goods'];
echo '您买了:<br />';
foreach ($goods as $value) {
   echo $value['name'] . ' 价格 ' . $value['price'] . ' 数量 ' . $value['number'] . '<br />';
}
echo '总价:' . $_SESSION['totalPrice'] . '<br />';

?>
<a href="goodsList.php">返回商品列表</a>
</body>
</html>

Contoh troli beli-belah selesaikah anda? ! awak baik! !

Meneruskan pembelajaran
||
<html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> </head> <body> <?php session_start(); //将session中的商品信息(即购物车中的商品)和总价显示到页面 $goods = $_SESSION['goods']; echo '您买了:<br />'; foreach ($goods as $value) { echo $value['name'] . ' 价格 ' . $value['price'] . ' 数量 ' . $value['number'] . '<br />'; } echo '总价:' . $_SESSION['totalPrice'] . '<br />'; ?> <a href="goodsList.php">返回商品列表</a> </body> </html>
  • Cadangan kursus
  • Muat turun perisian kursus