关于小程序:小程序商城系统源码完整开源版

  在本文中,咱们将应用PHP和MySQL构建一个跨平台反对的小程序商城源码。在这个源码中,咱们能够依据商品的名称、数量、状态(待定、已购买、不可购买)和日期增加它们。咱们能够查看、删除和更新这些条目,将有一个日期过滤性能,咱们能够依据日期查看货物。
  
  技术条件:XAMPP服务器、HTML基本概念、CSS、Bootstrap、PHP、MySQL
  
  残缺源码:xcxyms.top
  
  咱们将依照以下步骤构建此应用程序。
  
  步骤1:关上XAMPP控制面板,启动Apache和MySQL服务。在XAMPP文件夹中,转到htdocs文件夹并创立一个名为project1的文件夹。咱们将所有文件保留在project1文件夹中。在这个文件夹中,有五个文件(add.php, connect.php, delete.php, index.php, update.php)和一个名为css的文件夹,其中有一个名为style.css的文件。
  
  步骤2:转到localhost/phpMyAdmin并创立一个名为grocerydb的数据库。在它上面,创立一个名为grocerytb的5列表。列是Id(主键)、Item_name、Item_Quantity、Item_status和日期。Id列的主动递增模式应该是开启的。最初,表构造应该如图所示。
  
  步骤3:关上您抉择的编辑器。创立一个名为connect.php的文件,并编写以下代码行。
  

<?php
$con=mysqli_connect("localhost","root","","grocerydb");
if(!$con)
{
    die("cannot connect to server");
}    
?>

  这个页面用于将PHP页面与数据库“grocerydb”连接起来。连贯这个数据库之后,连贯对象被返回给$con变量。如果没有建设连贯,将显示“无奈连贯到服务器”的音讯。
  
  步骤4:创立另一个名为add.php的文件,并编写以下代码行。
  

<html>

<head>
    <meta http-equiv="Content-Type"
        content="text/html; charset=UTF-8">

    <title>Add List</title>

    <link rel="stylesheet" href=
"https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/style.css">
</head>

<body>
    <div class="container mt-5">
        <h1>Add Grocery List</h1>
        <form action="add.php" method="POST">
            <div class="form-group">
                <label>Item name</label>
                <input type="text"
                    class="form-control"
                    placeholder="Item name"
                    name="iname" />
            </div>

            <div class="form-group">
                <label>Item quantity</label>
                <input type="text"
                    class="form-control"
                    placeholder="Item quantity"
                    name="iqty" />
            </div>

            <div class="form-group">
                <label>Item status</label>
                <select class="form-control"
                    name="istatus">
                    <option value="0">
                        PENDING
                    </option>
                    <option value="1">
                        BOUGHT
                    </option>
                    <option value="2">
                        NOT AVAILABLE
                    </option>
                </select>
            </div>
            <div class="form-group">
                <label>Date</label>
                <input type="date"
                    class="form-control"
                    placeholder="Date"
                    name="idate">
            </div>
            <div class="form-group">
                <input type="submit"
                    value="Add"
                    class="btn btn-danger"
                    name="btn">
            </div>
        </form>
    </div>

    <?php
        if(isset($_POST["btn"])) {
            include("connect.php");
            $item_name=$_POST['iname'];
            $item_qty=$_POST['iqty'];
            $item_status=$_POST['istatus'];
            $date=$_POST['idate'];
    

            $q="insert into grocerytb(Item_name,
            Item_Quantity,Item_status,Date)
            values('$item_name',$item_qty,
            '$item_status','$date')";

            mysqli_query($con,$q);
            header("location:index.php");
        }
        
        // if(!mysqli_query($con,$q))
        // {
            // echo "Value Not Inserted";
        // }
        // else
        // {
            // echo "Value Inserted";
        // }
    ?>
</body>

</html>

  这个页面用于将食品杂货数据从HTML表单插入到“grocerydb”数据库中的“grocerytb”表。html表单蕴含要由用户输出的项目名称、我的项目数量、我的项目状态和日期值。咱们曾经别离将Pending、Bought和Not Available(我的项目状态)的选项值设置为0、1和2。当单击按钮时,咱们将蕴含文件“connect.php”,以将页面连贯到数据库。而后,咱们获取用户输出的所有数据,并将它们插入到“grocerytb”表中。如果在表中胜利地输出了值,页面将挪动到“index.php”,它将容许用户查看到目前为止输出的项(或目前在表中)。在css文件夹中创立一个“style.css”文件,并编写如下代码。
  

body {
    font-family: 'Poppins', sans-serif;
    font-weight: 300;
    background-color: beige;
}

h1, h2, h3, h4, h5 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
}

  “add.php”文件应该如图所示。
  
  步骤5:创立另一个名为index.php的文件,并编写以下代码行。
  

<?php
    include("connect.php");

    if (isset($_POST['btn'])) {
        $date=$_POST['idate'];
        $q="select * from grocerytb where Date='$date'";
        $query=mysqli_query($con,$q);
    }
    else {
        $q= "select * from grocerytb";
        $query=mysqli_query($con,$q);
    }
?>

<html>

<head>
    <meta http-equiv="Content-Type"
        content="text/html; charset=UTF-8">

    <title>View List</title>

    <link rel="stylesheet" href=
"https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">

    <link rel="stylesheet"
        href="css/style.css">
</head>

<body>
    <div class="container mt-5">
        
        <!-- top -->
        <div class="row">
            <div class="col-lg-8">
                <h1>View Grocery List</h1>
                <a href="add.php">Add Item</a>
            </div>
            <div class="col-lg-4">
                <div class="row">
                    <div class="col-lg-8">
                        
                        <!-- Date Filtering-->
                        <form method="post" action="">
                            <input type="date"
                                class="form-control"
                                name="idate">
                        
                            <div class="col-lg-4"
                                method="post">
                                <input type="submit"
                                class="btn btn-danger float-right"
                                name="btn" value="filter">
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>

        <!-- Grocery Cards -->
        <div class="row mt-4">
            <?php
                while ($qq=mysqli_fetch_array($query))
                {
            ?>

            <div class="col-lg-4">
                <div class="card">
                    <div class="card-body">
                        <h5 class="card-title">
                            <?php echo $qq['Item_name']; ?>
                        </h5>
                        <h6 class="card-subtitle mb-2 text-muted">
                            <?php echo
                            $qq['Item_Quantity']; ?>
                        </h6>
                        <?php
                        if($qq['Item_status'] == 0) {
                        ?>
                        <p class="text-info">PENDING</p>

                        <?php
                        } else if($qq['Item_status'] == 1) {
                        ?>
                        <p class="text-success">BOUGHT</p>

                        <?php } else { ?>
                        <p class="text-danger">NOT AVAILABLE</p>

                        <?php } ?>
                        <a href=
                        "delete.php?id=<?php echo $qq['Id']; ?>"
                            class="card-link">
                            Delete
                        </a>
                        <a href=
                        "update.php?id=<?php echo $qq['Id']; ?>"
                            class="card-link">
                            Update
                        </a>
                    </div>
                </div><br>
            </div>
            <?php
            }
            ?>
        </div>
    </div>
</body>

</html>

  咱们再次应用“connect.php”来连贯页面和数据库。而后,咱们应用mysqli_fetch_array()函数从表中获取所有数据,并将它们显示在页面上。对于每个我的项目,都有一个删除和更新链接。应用顶部的Add Item链接,页面将再次挪动到“Add .php”,从那里用户能够再次向数据库增加食品杂货。咱们还在这个页面上减少了一个日期过滤性能。当用户输出日期并单击筛选按钮时,所有的食品杂货数据将依据输出的日期显示。目前,咱们的“grocerytb”表如图所示。
  
  挪动到“index.php”文件后,页面看起来就像给定的图像所示。
  
  在输出日期01/14/2021后,页面将显示在给定的图像中。
  
  步骤6:创立另一个名为update.php的文件,并编写以下代码行。
  

<?php
    include("connect.php");
    if(isset($_POST['btn']))
    {
        $item_name=$_POST['iname'];
        $item_qty=$_POST['iqty'];
        $istatus=$_POST['istatus'];
        $date=$_POST['idate'];
        $id = $_GET['id'];
        $q= "update grocerytb set Item_name='$item_name', Item_Quantity='$item_qty',
        Item_status='$istatus', Date='$date' where Id=$id";
        $query=mysqli_query($con,$q);
        header('location:index.php');
    }
    else if(isset($_GET['id']))
    {
        $q = "SELECT * FROM grocerytb WHERE Id='".$_GET['id']."'";
        $query=mysqli_query($con,$q);
        $res= mysqli_fetch_array($query);
    }
?>
<html>

<head>
    <meta http-equiv="Content-Type"
        content="text/html; charset=UTF-8">
    
    <title>Update List</title>

    <link rel="stylesheet" href=
"https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/style.css">
</head>

<body>
    <div class="container mt-5">
        <h1>Update Grocery List</h1>
        <form method="post">
            <div class="form-group">
                <label>Item name</label>
                <input type="text"
                    class="form-control"
                    name="iname"
                    placeholder="Item name"
                    value=
        "<?php echo $res['Item_name'];?>" />
            </div>

            <div class="form-group">
                <label>Item quantity</label>
                <input type="text"
                    class="form-control"
                    name="iqty"
                    placeholder="Item quantity"
value="<?php echo $res['Item_Quantity'];?>" />
            </div>

            <div class="form-group">
                <label>Item status</label>
                <select class="form-control"
                    name="istatus">
                    <?php
                        if($res['Item_status'] == 0) {
                    ?>
                    <option value="0" selected>PENDING</option>
                    <option value="1">BOUGHT</option>
                    <option value="2">NOT AVAILABLE</option>
                    <?php } else if($res['Item_status'] == 1) { ?>
                    <option value="0">PENDING</option>
                    <option value="1" selected>BOUGHT</option>
                    <option value="2">NOT AVAILABLE</option>
                    <?php } else if($res['Item_status'] == 2) { ?>
                    <option value="0">PENDING</option>
                    <option value="1">BOUGHT</option>
                    <option value="2" selected>NOT AVAILABLE</option>
                    <?php
                        }
                    ?>
                </select>
            </div>

            <div class="form-group">
                <label>Date</label>
                <input type="date" class="form-control"
                    name="idate" placeholder="Date"
                    value="<?php echo $res['Date']?>">
            </div>

            <div class="form-group">
                <input type="submit" value="Update"
                    name="btn" class="btn btn-danger">
            </div>
        </form>
    </div>
</body>

</html>

  在” index.php “中,咱们获取了每一项的Id。在” update.php “中,用户能够编辑任何数据。对于该我的项目,咱们将获取id和更新后的我的项目的数据。而后,咱们运行一个更新查问,通过它更新我的项目。我的项目更新后,页面将挪动到“index.php”。这里,咱们更新Item_name的值为pineapple, Id为6。咱们将其Item_Quantity从1更新到2,Item_status从Pending更新到Not available。在此之后,页面将看起来像给定的图像所示。
  
  更新之后,index.php将是这样的。
  
  更新后的表看起来像这样。
  
  步骤7:创立另一个名为delete.php的文件,并编写以下代码行。
  

<?php
    include("connect.php");
    $id = $_GET['id'];
    $q = "delete from grocerytb where Id = $id ";
    mysqli_query($con,$q);    
?>

  在” index.php “中,咱们获取了每一项的Id,这样咱们就能够删除任何数据。对于要删除的我的项目,咱们正在“delete.php”中获取id。而后,咱们运行一个删除查问,通过该查问将删除所选项目标记录。咱们正在删除Id为6、Item_name为菠萝的我的项目。删除它之后,页面看起来就像给定的图像所示。
  
  表格是这样的。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理