0

我是 PHP5 OOP 概念的新手。请为“如何使用 oops 概念插入数据?”提供一些示例源代码。即使在 connection.php 页面中,我也想为此使用纯 php5 概念。我想提高我的知识。请任何人帮助我....

我知道下面的基本概念

insert_db.php

                $sql="INSERT INTO Persons (FirstName, LastName, Age)
            VALUES
            ('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";

            if (!mysql_query($sql,$con))
              {
              die('Error: ' . mysql_error());
              }
            echo "1 record added";

            mysql_close($con)

连接.php

          <?php
            // connect database  code
             $dbhost ='localhost';
            $dbuser = 'tomking';
            $dbpass = 'dsfds';
            $dbname = 'mydb';
            //connectivity of database
            $conn = mysql_connect($dbhost,$dbuser,$dbpass) or die ('Error Connecting to mysql');
            mysql_select_db($dbname);
          ?>
4

2 回答 2

1

使用MysqliorPDO用于使用 sql 查询,而不是直接将变量传递给查询。

当您直接将变量传递给查询时,这将导致sql注入

如果要将变量传递给 sql 查询,则必须为此使用过滤器

从注入攻击中过滤转义后数据

PDO 文档

MySQLi 文档

而这都是纯粹的PHP5概念。

于 2012-09-20T04:18:16.990 回答
1
$mysqli = new mysqli($hostname, $username, $password, $database_name);

if($mysqli->error)
    die($mysqli->error);

$mysqli->query("SET NAMES 'UTF8'");

$query = "INSERT INTO my_table VALUES ('value_1', 'value_2')";
$mysqli->query($query);
if(!$mysql->error)
   echo 'do something';

$query = "SELECT * FROM my_table";
$sql = $mysqli->query($query);
if($sql->num_rows > 0) {
    while($row = $sql->fetch_assoc()) {
        echo $row['field_1'];
    }
}
$sql->close();
于 2012-09-20T04:21:06.723 回答