将SQL数据库连接传递给PHP函数

时间:2015-12-15 12:31:04

标签: php sql function reference connection

我从第二个PHP文件调用一个函数,我想避免再次创建数据库连接。我正在使用此代码,但它不起作用。

$(".draggable").draggable({});

我突然出错了。如果我把我的代码的第一部分放在包含该函数的PHP文件中,一切正常。

我得到的错误:

  

mysqli :: query():无效的对象或资源mysqli

  

在非对象

上调用成员函数fetch_assoc()

如果我只是输入:

,代码工作正常
$Db = mysqli_init();
$Db->options(MYSQLI_OPT_LOCAL_INFILE, true);
$Db->real_connect($servername, $username, $password, $dbname, 3306);
$connection = $Db->real_connect($servername, $username, $password, $dbname, 3306);

CheckTableMetrics($connection, $dbname, $table1, $table2, $metric1, $metric2, $date1, $date2, $start_date, $end_date);

哪种方法最好?

1 个答案:

答案 0 :(得分:4)

你的问题很简单:

    public void onDateSet(DatePicker view, int selectedYear, int selectedMonth, int selectedDay) {
             et.setText(selectedDay + " / " + (selectedMonth + 1) + " / "
                    + selectedYear);
 SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
            Calendar c = Calendar.getInstance();
            c.set(selectedYear, selectedMonth, selectedDay); //set the date here
           // c.setTime(dtStartDate);
            c.add(Calendar.DATE, 100);  // number of days to add
            String dt = sdf.format(c.getTime());  // dt is now the new date
            display.setText(dt);
        }

这是错误的。 $connection = $Db->real_connect($servername, $username, $password, $dbname, 3306); 返回布尔标记成功或失败,而不是连接的数据库对象。相反,您应该将real_connect()发送到您的函数中,它将全部有用。