当前位置:首页 > 行业动态 > 正文

如何利用PHP源码搭建自己的微商城?

微商城PHP源码是一种基于PHP语言开发的电子商务平台源代码,用于创建和管理在线商城。

由于微商城PHP源码涉及到的内容较多,这里给出一个简单的示例,包括用户注册、登录、商品列表展示和购物车功能,请根据实际需求进行修改和完善。

如何利用PHP源码搭建自己的微商城?  第1张

1、创建一个数据库表用于存储用户信息:

CREATE TABLEusers (id int(11) NOT NULL AUTO_INCREMENT,username varchar(255) NOT NULL,password varchar(255) NOT NULL,email varchar(255) NOT NULL,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2、创建一个数据库表用于存储商品信息:

CREATE TABLEproducts (id int(11) NOT NULL AUTO_INCREMENT,name varchar(255) NOT NULL,price decimal(10,2) NOT NULL,description text,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

3、创建一个数据库表用于存储购物车信息:

CREATE TABLEcart (id int(11) NOT NULL AUTO_INCREMENT,user_id int(11) NOT NULL,product_id int(11) NOT NULL,quantity int(11) NOT NULL,
  PRIMARY KEY (id),
  FOREIGN KEY (user_id) REFERENCESusers(id),
  FOREIGN KEY (product_id) REFERENCESproducts(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

4、创建用户注册页面(register.php):

<!DOCTYPE html>
<html>
<head>
    <title>用户注册</title>
</head>
<body>
    <h1>用户注册</h1>
    <form action="register_action.php" method="post">
        用户名: <input type="text" name="username"><br>
        密码: <input type="password" name="password"><br>
        邮箱: <input type="email" name="email"><br>
        <input type="submit" value="注册">
    </form>
</body>
</html>

5、创建用户注册处理脚本(register_action.php):

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn>connect_error) {
    die("连接失败: " . $conn>connect_error);
}
$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];
$sql = "INSERT INTO users (username, password, email) VALUES ('$username', '$password', '$email')";
if ($conn>query($sql) === TRUE) {
    echo "注册成功";
} else {
    echo "Error: " . $sql . "<br>" . $conn>error;
}
$conn>close();
?>

6、创建用户登录页面(login.php):

<!DOCTYPE html>
<html>
<head>
    <title>用户登录</title>
</head>
<body>
    <h1>用户登录</h1>
    <form action="login_action.php" method="post">
        用户名: <input type="text" name="username"><br>
        密码: <input type="password" name="password"><br>
        <input type="submit" value="登录">
    </form>
</body>
</html>

7、创建用户登录处理脚本(login_action.php):

<?php
session_start();
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn>connect_error) {
    die("连接失败: " . $conn>connect_error);
}
$username = $_POST['username'];
$password = $_POST['password'];
$sql = "SELECT * FROM users WHERE username='$username' AND password='$password'";
$result = $conn>query($sql);
if ($result>num_rows > 0) {
    $_SESSION['username'] = $username;
    header("Location: product_list.php");
} else {
    echo "用户名或密码错误";
}
$conn>close();
?>

8、创建商品列表页面(product_list.php):

<?php
session_start();
if (!isset($_SESSION['username'])) {
    header("Location: login.php");
    exit;
}
?>
<!DOCTYPE html>
<html>
<head>
    <title>商品列表</title>
</head>
<body>
    <h1>商品列表</h1>
    <a href="cart.php">查看购物车</a> | <a href="logout.php">退出登录</a>
    <table border="1">
        <tr>
            <th>商品名称</th>
            <th>价格</th>
            <th>操作</th>
        </tr>
        <?php
        $servername = "localhost";
        $username = "username";
        $password = "password";
        $dbname = "myDB";
        // 创建连接
        $conn = new mysqli($servername, $username, $password, $dbname);
        // 检测连接
        if ($conn>connect_error) {
            die("连接失败: " . $conn>connect_error);
        }
        $sql = "SELECT * FROM products";
        $result = $conn>query($sql);
        if ($result>num_rows > 0) {
            while($row = $result>fetch_assoc()) {
                echo "<tr><td>" . $row["name"]. "</td><td>" . $row["price"]. "</td><td><a href='add_to_cart.php?product_id=".$row["id"]."'>加入购物车</a></td></tr>";
            }
        } else {
            echo "0 结果";
        }
        $conn>close();
        ?>
    </table>
</body>
</html>

9、创建添加商品到购物车的脚本(add_to_cart.php):

<?php
session_start();
if (!isset($_SESSION['username'])) {
    header("Location: login.php");
    exit;
}
$product_id = $_GET['product_id'];
$user_id = $_SESSION['user_id']; // 假设已经获取到用户ID,实际应用中需要从数据库中查询
$quantity = 1; // 默认购买数量为1,可以根据需要进行修改
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn>connect_error) {
    die("连接失败: " . $conn>connect_error);
}
$sql = "INSERT INTO cart (user_id, product_id, quantity) VALUES ($user_id, $product_id, $quantity)";
if ($conn>query($sql) === TRUE) {
    echo "商品已添加到购物车";
} else {
    echo "Error: " . $sql . "<br>" . $conn>error;
}
$conn>close();
?>

10、创建购物车页面(cart.php):

<?php
session_start();
if (!isset($_SESSION['username'])) {
    header("Location: login.php");
    exit;
}
?>
<!DOCTYPE html>
<html>
<head>
    <title>购物车</title>
</head>
<body>
    <h1>购物车</h1>
    <a href="product_list.php">返回商品列表</a> | <a href="logout.php">退出登录</a>
    <table border="1">
        <tr>
            <th>商品名称</th>
            <th>价格</th>
            <th>数量</th>
            <th>操作</th>
        </tr>
        <?php
        $servername = "localhost";
        $username = "username";
        $password = "password";
        $dbname = "myDB";
        $user_id = $_SESSION['user_id']; // 假设已经获取到用户ID,实际应用中需要从数据库中查询
        // 创建连接
        $conn = new mysqli($servername, $username, $password, $dbname);
        // 检测连接
        if ($conn>connect_error) {
            die("连接失败: " . $conn>connect_error);
        }
        $sql = "SELECT p.name, p.price, c.quantity FROM cart c INNER JOIN products p ON c.product_id = p.id WHERE c.user_id = $user_id";
        $result = $conn>query($sql);
        if ($result>num_rows > 0) {
            while($row = $result>fetch_assoc()) {
                echo "<tr><td>" . $row["name"]. "</td><td>" . $row["price"]. "</td><td>" . $row["quantity"]. "</td><td><a href='remove_from_cart.php?product_id=".$row["product_id"]."'>移除</a></td></tr>";
            }
        } else {
            echo "购物车为空";
        }
        $conn>close();
        ?>
    </table>
</body>
</html>

小伙伴们,上文介绍了“微商城php源码”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。

0