zoukankan      html  css  js  c++  java
  • PHP SQL预处理

    php预处理查询

    $query='insert into p1(info) values(?)';
    $query2='select info from p1 where id=?';
    $country=2;
    
    // 创建预处理语句
    $stmt=mysqli_stmt_init($link);
    
    if (mysqli_stmt_prepare($stmt,$query2))
    {
        
        // 绑定参数
        mysqli_stmt_bind_param($stmt,"i",$country);
        
        // 执行查询
        mysqli_stmt_execute($stmt);
        
        // 绑定结果变量
       mysqli_stmt_bind_result($stmt,$name); //此处的变量有几个查询参数就返回写几个
        
        // 获取值
        mysqli_stmt_fetch($stmt); 
        
         printf("国家的网站为:%s",$name);
        
        // 关闭预处理语句
        mysqli_stmt_close($stmt);
    }

    循环取数据

    $query2='select id,info from p1 where id=? or id=?';
    $country=2;
    $country2=10;
    // 创建预处理语句
    $stmt=mysqli_stmt_init($link);
    
    if (mysqli_stmt_prepare($stmt,$query2))
    {
        
        // 绑定参数
        mysqli_stmt_bind_param($stmt,"ii",$country,$country2);
        
        // 执行查询
        mysqli_stmt_execute($stmt);
        //暑促一个对行数的影响
        var_dump(mysqli_affected_rows($link)) ;
        // 绑定结果变量
        mysqli_stmt_bind_result($stmt,$id,$name);
        
        // 获取值
     
    
        while(mysqli_stmt_fetch($stmt)){
            printf("查询结果:%s,%s",$id,$name);
    }

    php预处理插入

    $query='insert into p1(info) values(?)';
    $country=2;
    
    // 创建预处理语句
    $stmt=mysqli_stmt_init($link);
    // 绑定参数
    if (mysqli_stmt_prepare($stmt,$query))
    {
        
        // 绑定参数
        mysqli_stmt_bind_param($stmt,"s",$country);
        
        
        // 关闭预处理语句
        mysqli_stmt_close($stmt);
    }

    补充

       从一个prepared语句返回结果集元数据,配合相关函数,可以用来获得字段的相关信息
            mysqli_result mysqli_stmt_result_metadata ( mysqli_stmt $stmt );
            ①mysqli_fetch_field();
            ②mysqli_fetch_fields();
        取回一个结果集
            bool mysqli_stmt_store_result ( mysqli_stmt $stmt );
            取回之后可以使用int mysqli_stmt_num_rows ( mysqli_stmt $stmt );返回语句结果集中的行数
        释放给定语句处理存储的结果集所占内存
            void mysqli_stmt_free_result ( mysqli_stmt $stmt );
      关闭一个prepared语句
            bool mysqli_stmt_close ( mysqli_stmt $stmt );

        //从一个prepared语句返回结果集元数据,配合相关函数,可以用来获得字段的相关信息==================
        var_dump($a=mysqli_stmt_result_metadata ($stmt ));
        //获取字段信息
        var_dump(mysqli_fetch_field($a));
        var_dump(mysqli_fetch_field($a));
  • 相关阅读:
    深入浅出之正则表达式(一)
    Windows平台下构建 Android 开发环境( Android SDK 下载及安装教程)
    Eclipse 安装配置总结
    JDK安装配置教程
    关于磁力链接(Magnet URI)的简单介绍
    C# ASP.NET里的@妙用,字符串换行
    颜色中英文对照表 CSS
    使用git 工具下载android.jar Source Code
    ASP.NET表单提交之Get和Post的区别
    深入浅出之正则表达式(二)
  • 原文地址:https://www.cnblogs.com/xiaozhang666/p/11200971.html
Copyright © 2011-2022 走看看