2016-05-13 49 views
1

什么是PHP中的参数?什么是PHP中的参数?

我看了网上,有很多不同的定义,这是一个像我这样的新手混淆。

我之所以这样问是因为我有以下错误:在此基础上的代码

Warning: mysqli_query() expects at least 2 parameters, 1 given in /Applications/MAMP/htdocs/PhpProject2/Area_Rest_page.php on line 22

$sql=mysqli_query("SELECT Rest_Details.Resturant_ID,  
Rest_Details.Resturant_name, Rest_Details.Res_Address_Line_1, Rest_Details.City_name, 
Rest_Details.Avg_Del,Delivery_Pcode.Pcode 
FROM Rest_Details 
INNER JOIN Delivery_Pcode 
ON Delivery_Pcode.Restaurant_ID=Rest_Details.Restaurant_ID 
WHERE Delivery_Pcode.Pcode LIKE '%$searchq'") or die ("could not search!"); 

线22:

WHERE Delivery_Pcode.Pcode LIKE '%$searchq'") or die ("could not search!"); 
+1

参数是您传递给函数的参数....在代码的情况下(请参阅[PHP文档](http://php.net/manual/en/mysqli.query.php))细节'mixed mysqli_query(mysqli $ link,string $ query [,int $ resultmode = MYSQLI_STORE_RESULT]'),第一个强制性参数应该是数据库连接,第二个强制性参数应该是查询字符串,可选第三个参数对于结果模式....您只传递查询字符串 –

+1

在这种情况下,参数是'mysqli_query()'中的项目。你的'SELECT'是第一个参数。问题是,它需要成为第二个参数。第一个参数应该是数据库连接。 http://php.net/manual/en/mysqli.query.php –

回答

1

这意味着mysqli_query需要2个变量传递给它。一个是您提供的sql查询,但它也需要知道要查询哪个mysql连接。

请阅读官方文档mysqli_query以及function arguments

Information may be passed to functions via the argument list, which is a comma-delimited list of expressions. The arguments are evaluated from left to right.

下面是一个例子使用的功能,您正在尝试使用:

$link = mysqli_connect("localhost", "my_user", "my_password", "world"); 

/* check connection */ 
if (mysqli_connect_errno()) { 
    printf("Connect failed: %s\n", mysqli_connect_error()); 
    exit(); 
} 

/* Create table doesn't return a resultset */ 
if (mysqli_query($link, "CREATE TEMPORARY TABLE myCity LIKE City") === TRUE) { 
    printf("Table myCity successfully created.\n"); 
} 

在上面的代码中,我们首先连接到数据库mysqli_connect,我们节省的返回值该函数的变量为$link

然后,要运行我们的查询mysqli_query,我们传递连接变量($link)以及查询。

+0

哦,谢谢你,现在有这么多的意义,我现在会尝试 – jerneva

+0

惊人的谢谢你 – jerneva