我正在使用数组来搜索数据库(MS Access)中的值,但是它不起作用

时间:2018-10-19 11:58:30

标签: php sql

我想使用数组来搜索MS Access数据库中的值。我尝试使用prepare,但是出现问题。我是Php的新手。请帮助谢谢。

我的代码:

<?php
session_start();
$con=odbc_connect("Product","","");

if($con){
    echo "Connected";
}
else{
    echo "failed";
}

foreach($_SESSION['NameOfItem'] as $key=>$value)
{
    $val = $value;

    $sql = 'SELECT * FROM product where nameProduct = '.$val;

    $result = odbc_exec($con,$sql);

    while ($row = odbc_fetch_array($result)) {   
        echo "Name".$row['ID'];
        echo "Product".$row['nameProduct'];
        echo "Price".$row['price'];
    } 
}
?>

错误:

  

Warning: odbc_exec(): SQL error: [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1., SQL state 07001 in SQLExecDirect in C:\xampp\htdocs\product\phpCon.php on line 18

     

Warning: odbc_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\product\phpCon.php on line 20

     

Warning: odbc_exec(): SQL error: [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1., SQL state 07001 in SQLExecDirect in C:\xampp\htdocs\product\phpCon.php on line 18

     

Warning: odbc_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\product\phpCon.php on line 20

1 个答案:

答案 0 :(得分:1)

您的连接线路应为:

$ dbConn = odbc_connect($ dns,$ dbUser,$ dbPass,$ dbName);

进一步,请看看http://php.net/manual/en/function.odbc-connect.php