php - 使用php向数据库中插入数据

标签 php mysql pdo

我是 php 新手 我创建了一个 php 表单,它将数据插入数据库 我的数据库名称是 Emp,表名称是 info。我正在使用 PDO 插入。我已经编写了一个代码来执行此操作,它正在执行而没有发现任何错误,但数据库仍然是空的。我已经在下面发布了我的代码,请告诉我我做错了什么。

<?php
    try{
        echo $_POST['name'].", ".$_POST['age'].", ".$_POST['email'].", ".$_POST['name'].", ".$_POST['country'].", ". $_POST['city'] ;
        $user="root";
        $pass="root123";
                    $con=new PDO('mysql:host=localhost;dbname=Emp', $user, $pass);
        $con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $con->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
        $con->beginTransaction();
        //echo "INSERT INTO info(Empid,Ename,Age,Email,Country,City,Salary) VALUES('".$_POST['eid']."','".$_POST['name']."','".$_POST['age']."','".$_POST['email']."','".$_POST['country']."','".$_POST['city']."','".$_POST['salary']."')";
        $num=$con->exec("INSERT INTO info(Empid,Ename,Age,Email,Country,City,Salary) VALUES('".$_POST['eid']."','".$_POST['name']."','".$_POST['age']."','".$_POST['email']."','".$_POST['country']."','".$_POST['city']."','".$_POST['salary']."')");
        echo "<br>".$num." row added succesfully"; // this is displayed when I execute this but database is empty.
    }
    catch(Exception $e)
    {
        echo 'Exception -> ';
        var_dump($e->getMessage());
    }
    ?> 

最佳答案

因为您已经使用了beginTransaction(),所以您必须提交更改。添加

$con->commit();

引用:PHP Manual

注意:即使您使用的是 PDO,您仍然在未经清理的情况下插入 HTTP 请求值,这可能很糟糕

关于php - 使用php向数据库中插入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18733300/

相关文章:

php - 在 linux 上用 php 检查服务状态?

mysql - 非等价连接

php - 数据库查询未按预期返回 php pdo

php - 这个 MySQL 查询出了什么问题

php - 500 内部错误 - 连接到外部 WordPress 数据库时 PHP 超时

php - 在数据库中使用 PDO 准备语句进行 SELECT 检查是否有任何结果

java - `SELECT ... FOR UPDATE`锁什么时候释放?

php - 字符编码在某一点丢失

php - 使用 PDO/MySQL 准备语句的表名作为参数

php - 在 jquery ajax url 中包含 $_SERVER 文件路径的语法?