MySQLi无法正常工作

时间:2014-10-19 17:04:12

标签: php mysqli insert

我知道这个问题非常频繁,但是我浪费了很多时间,但它仍然没有用。我们正在尝试插入一行,但它无法正常工作。

这是代码:

<?php
    class DAL{
        private $srvname='localhost';
        private $username='i110546';
        private $password='2349058';
        private $bdname='i110546';

        function insert_log($url){

            $conn = new mysqli($srvname, $username, $password, $bdname);
            if (mysqli_connect_errno()) {
                printf("Conexao falhada: %s\n", mysqli_connect_error());
                                return NULL;
            }

                        $query = "INSERT INTO `log` (`url`) VALUES (?)";
                        $test = $conn->prepare($query);
                        $test->bind_param('ss',$url);
                        $test->execute();
                        $test->close();
                        $conn->close();
                }
    }
?>

任何人都知道该怎么做?

2 个答案:

答案 0 :(得分:0)

您只有一个参数,但在您的绑定调用中,您有2个字符串参数ss

应该是一个:

$test->bind_param('s',$url);

检查错误。

答案 1 :(得分:0)

$test->bind_param('ss',$url);

你绑定两个两个字符串(ss)但只提供一个,而你的语句只包含一个占位符,我的猜测是你想要的行是

$test->bind_param('s',$url);

此外,您以错误的方式处理您的媒体资源,需要使用$ this-&gt; variable_name在方法(函数)中进行处理,因此请将您的行修改为此

$conn = new mysqli($this->srvname, $this->username, $this->password, $this->bdname);
相关问题