我一直在這裏呆了一天,我希望有一組不同的眼睛可以告訴我我要出錯的地方。PHP MySQL - 查詢中的字符串var不返回結果
我們正在使用MySQL存檔呼叫中心的日常報告,並且我有一個頁面讓人們可以根據主管和日期來搜索他們。當他們執行搜索時,兩個不可見文本框會檢索搜索條件,當它們點擊「導出」時,這些值將被傳遞到運行PHPEXCEL的導出頁面以打印結果。
它工作正常,但我們最近將它拼湊到一個PHPBB頁面,出於某種原因,它無法正確讀取管理員名稱字符串。因此,搜索頁面工作正常,以下所有代碼/信息都與「導出」頁面相關。
echo $supervisorName; #returns John Smith
相呼應的是,出口頁面上打破了Excel文件PHPExcel吐出來,這是有道理的,但它確實表明變量被保存和正確。
$sql = "Select
newTeam, First, Last, `Calls Handled`, `Avg AHT`, ...
From
phpbb_reportarchive inner join employees on phpbb_reportachive.phonenum = employees.phonenum
where
employees.newteam = '{$supervisorName}' and phpbb_reportarchive.Date = '{$incidentDate}'
order by last";
當我在字符串中包含的上司的名字,不過,PHPExcel吐出了一個空的結果 - 沒有粘貼行。但是,如果我刪除變量$ supervisorName並將其替換爲'John Smith',它將返回預期結果,並且PHPExcel會給我我想要的結果。
我很感激任何幫助。如果我能提供更多信息來澄清我的任何事情。有沒有人看到我可能做錯了什麼?
爲什麼$ supervisorName在大括號中? – Reflic
您是否在分配'$ sql'之前將'echo $ supervisorName'直接打印了正確的值? 'echo $ sql'並確保生成正確的查詢。 – ChicagoRedSox
Reflix - 我的理解是大括號是可選的 - 我嘗試刪除它們,但沒有做出改變。芝加哥 - 它看起來像是在主管名字前插入一個換行符,不知道爲什麼 - 但是感謝這個偉大的建議,沒有想過echo sql。我將嘗試分離出來 – Acantud