PHP连接数据库实现对网页内容增删改查



例子:

$db = new MySQLi("localhost","root","","mydb");
!mysqli_connect_error() or die ("连接失败!");
$sql="select * from Info,Nation where Info.Nation=Nation.Code";
$result = $db->query($sql);
if($result)
{
    $attr = $result->fetch_all();
    //var_dump($attr);
    echo "<table border='1' cellpadding='0' cellspacing='0' align='center' width='100%'>";
    echo "<tr>
            <td>代号</td>
            <td>姓名</td>
            <td>性别</td>
            <td>国籍</td>
            <td>出生年月</td>
            <td>操作</td>
        </tr>";
    foreach($attr as $v)
    {
        $sex = $v[2]?'男':'女';
        //处理民族名称
        $sqln="select Name from Nation where Code='{$v[3]}'";
        $rnation = $db->query($sqln);
        $attrn =$rnation->fetch_assoc();
        echo "<tr>
                 <td>{$v[0]}</td>
                <td>{$v[1]}</td>
                <td>{$sex}</td>
                <td>{$attrn['Name']}</td>
                <td>{$v[4]}</td>
                <td><a href='Delete.php?code={$v[0]}'>删除</a>
                    <a href='Update.php?code={$v[0]}'>修改</a>
                </td>
            </tr>";
    } 
    echo "</table>";
}

?>
<a href="Add.php">添加数据</a>

此页面是主页面,通过底部的添加数据超链接进入添加数据页面,下面是添加页面的代码:

<body>
<h1>添加数据</h1>
<form action="AddChuLi.php" method="post">
<div>代号:<input type="text" name="code"/></div>
<div>姓名:<input type="text" name="name"/></div>
<div>性别:<input type="radio" value="男" name="sex"/><input type="radio" value="女" name="sex"/>女 </div>
<div>国籍:<select name="nation">
          <?php
          $db =new MySQLi("localhost","root","","mydb");
          $sql="select * from Nation";
          $r=$db->query($sql);
          $attr=$r->fetch_all();
          foreach($attr as $v)
          {
              echo "<option value='$v[0]'>{$v[1]}</option>";
          }
          
          ?>
          </select></div>
<div>生日:<input type="text" name="birthday"/></div>
<div><input type="submit" value="添加" /></div>
</form>
<div><a href="test.5.3.php">返回主页</a></div>

在此页面输入添加的数据,然后通过表单中的方法连接到后台添加处理页面,通过对数据库的操作使数据添加成功,代码如下:

<?php
$code=$_POST["code"];
$name=$_POST["name"];
$sex=$_POST["sex"];
$nation=$_POST["nation"];
$birthday=$_POST["birthday"];
$s =1;
if($sex =="女")
{
    $s=0;
}


$db= new MySQLi("localhost","root","","mydb");
$sql="insert into Info values('{$code}','{$name}',{$s},'{$nation}','{$birthday}')";
$result = $db->query($sql);
if($result)
{
    header("location:Add.php");
}
else
{
    echo "添加失败";
}

?>

以上是添加功能,接下来是删除后台处理页面代码:

<?php
$code=$_GET["code"];
$db =new MySQLi("localhost","root","","mydb");
$sql="delete from Info where code='{$code}'";
$r= $db->query($sql);
if($r)
{
    header("location:test.5.3.php");
}
else
{
    echo "删除失败";
}
?>

最后是修改功能,这个功能比之前两个稍微复杂点,因为涉及到有默认值,代码如下:

<body>
<h1>修改数据</h1>


<?php
$code= $_GET["code"];
$db =new MySQLi("localhost","root","","mydb");
$sql1="select * from Info where Code='{$code}'";
$r=$db->query($sql1);
$arr=$r->fetch_row();
?>
<form action="UpdateChuLi.php" method="post">
<div><input type="hidden" name="code" value="<?php echo $arr[0] ?>"/></div>
<div>姓名:<input type="text" name="name" value="<?php echo $arr[1] ?>"/></div>
<div>性别:<input type="radio" value="男" name="sex" <?php echo $arr[2]?"checked='checked'":"" ?>/>男 
          <input type="radio" value="女" name="sex" <?php echo $arr[2]?"":"checked='checked'" ?>/>女 </div>
<div>国籍:<select name="nation">
          <?php
          
          $sql="select * from Nation";
          $r=$db->query($sql);
          $attr=$r->fetch_all();
          foreach($attr as $v)
          {
              if($v[0]==$arr[3])
              {
                 echo "<option selected='selected' value='$v[0]'>{$v[1]}</option>";
              }
              else
              {
                 echo "<option value='$v[0]'>{$v[1]}</option>";
              }
          }
          
          ?>
          </select></div>
<div>生日:<input type="text" name="birthday" value="<?php echo $arr[4] ?>"/></div>
<div><input type="submit" value="修改" /></div>
</form>
<a href="test.5.3.php">返回主页面</a>
</body>
<?php
$code=$_POST["code"];
$name=$_POST["name"];
$sex=$_POST["sex"];
$nation=$_POST["nation"];
$birthday=$_POST["birthday"];
$s =1;
if($sex =="女")
{
    $s=0;
}

$db =new MySQLi("localhost","root","","mydb");
$sql ="Update Info set Name='{$name}',Sex={$s},Nation='{$nation}',Birthday='{$birthday}' where Code='{$code}'";
$r=$db->query($sql);
if($r)
{
    header("location:test.5.3.php");
}
else
{
    echo "修改失败";
}


这个例子主要是增删改查的直面应用,其中数据显示出来在之前已经学习,只不过在查的基础上进行增删改

增:用到用户在添加数据页面键入的值,通过表单中定义好的name用POST方法传达,之后在后台通过$_POST["value值"]获取到存到一个变量中,再连接到数据库通过结构化查询语言添加到数据库中

删:则是应用到每行数据的主键值,通过GET方法传至后台,再连接到数据库通过结构化查询语言将数据删除

改:用到增和删的结合。后台修改处理应用POST传达,默认值显示则是通过主键定位。


原文地址:https://www.cnblogs.com/Itwonderful/p/5457894.html