我很抱歉如果我的問題有一個簡單的答案,但我是新來的,並且有點卡住... 所以我應該做一個烹飪食譜一個項目的網站,我使用的PHP 5.5.9和SQL Server 2012.我跟着一個視頻教程創建一個搜索框應該列出結果,從數據庫中檢索。這裏是我的代碼:PHP連接到Sql服務器,但查詢不起作用
<?php
include ("dbconnect.php");
if (!isset($_POST['search'])) {
header("Location:index.php");
}
$search_sql="SELECT * FROM Recipe WHERE name LIKE '%".$_POST['search']."%' OR description LIKE '%".$_POST['search']."%'";
$search_query=sqlsrv_query($conn, $search_sql);
if (sqlsrv_num_rows($search_query)!=0) {
$search_rs=sqlsrv_fetch_assoc($search_query); }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<h3>Search results</h3>
<?php
if (sqlsrv_num_rows($search_query)!=0) {
do { ?>
<p><?php echo $search_rs['name']; ?></p>
<?php }
while ($search_rs=sqlsrv_fetch_assoc($search_query));
}
else {
echo "No results found";
}
?>
</body>
</html>
這裏是我的dbconnect.php:
<?php
$serverName = "USER\SQLEXPRESS"; //serverName\instanceName
// Since UID and PWD are not specified in the $connectionInfo array,
// The connection will be attempted using Windows Authentication.
$connectionInfo = array("Database"=>"iCook project");
$conn = sqlsrv_connect($serverName, $connectionInfo);
if($conn) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die(print_r(sqlsrv_errors(), true));
}
?>
安裝的PHP 5.5和SQL服務器驅動程序後,數據庫也只需設法connect..However,查詢不起作用,即使我硬編碼值。我不再有錯誤,但一直「沒有找到結果」......可能值得一提的是,我遵循的教程是使用MySQL,因此我在代碼中將mysql更改爲sqlsrv。此外,查詢並直接在SQL服務器執行...
我將不勝感激任何幫助......
編輯: OK仍然沒有運氣,但我注意到的東西 - PhpStorm說:「未定義功能sqlsrv_fetch_assoc 。在內置庫和項目文件中找不到引用函數聲明。「我嘗試了谷歌搜索這個,但沒有出現..你怎麼做到這一點? 另外,我使用的教程是this one ...
你需要編寫名稱像「%」。$ somevariable。「%」NOT name = –
是的,我的錯誤,但沒有什麼變化不幸的.. –