Я пытаюсь создать строку, которую я могу использовать в инструкции select, которая содержит 3 многозначных значения сериализации с другой страницы. Например:Извлечение нескольких значений, выбранных в форме из базы данных
$FullName1 = implode("' OR FullName = '", $_POST['FullName']);
$FullName2 = "FullName = '" . $FullName1;
$FullName0 = $FullName2 . "' ";
echo $FullName0;
дает мне «FullName = 'Joe Dirt' ИЛИ FullName = 'John Doe' , $ ProjectType1 = взрывать (" 'OR ProjectType ='", $ _POST [ 'ProjectType']) ; $ ProjectType2 = "ProjectType = '". $ ProjectType1; $ ProjectType0 = $ ProjectType2. «»;
echo $ProjectType0;
дает мне «ProjectType = 'встречи с клиентами' OR ProjectType = 'ESN Изменить» и
$Company1 = implode("' OR Company = '", $_POST['Company']);
$Company2 = "Company = '" . $Company1;
$Company0 = $Company2 . "' ";
echo $Company0;
дает мне «Компания = 'Acme' ИЛИ Компания =' Airgas»
то, что я хочу сделать, это организовать эти три в нечто вроде
“$string =
Company = 'Acme' AND ProjectType = 'Customer Meetings' AND FullName = 'Joe Dirt'
OR
Company = 'Acme' AND ProjectType = 'Customer Meetings' AND FullName = 'John Doe'
OR
Company = 'Acme' AND ProjectType = 'ESN Change' AND FullName = 'Joe Dirt'
OR
Company = 'Acme' AND ProjectType = 'ESN Change' AND FullName = 'John Doe'
OR
Company = 'Airgas' AND ProjectType = 'Customer Meetings' AND FullName = 'Joe Dirt'
OR
Company = 'Airgas' AND ProjectType = 'Customer Meetings' AND FullName = 'John Doe'
OR
Company = 'Airgas' AND ProjectType = 'ESN Change' AND FullName = 'Joe Dirt'
OR
Company = 'Airgas' AND ProjectType = 'ESN Change' AND FullName = 'John Doe'
OR
"
так что я ок n проведите так же, как
"SELECT * FROM Tracker WHERE ID > 0 AND $string ORDER BY Created DESC"
Кроме того, если есть более простой способ сделать это, я за это! Благодарю.
Прежде всего, никогда не используйте данные POST непосредственно в вашем запросе. Пользователь может манипулировать им и злоупотреблять вашей базой данных. он называется [SQL injection] (http://php.net/manual/en/security.database.sql-injection.php) – Ibu
Я пробовал это; $ info3 = "SELECT * FROM Tracker ГДЕ ID> 0 И компания IN ('Acme', 'Airgas') И ProjectType IN (« Встречи с клиентами »,« Изменение ESA ») И FullName IN ('Joe Dirt', 'John Doe ")"; $ rs3 = odbc_exec ($ conn1, $ info3); while ($ row = odbc_fetch_array ($ rs3)) {... Он не вызывает ошибку, но ничего не извлекается. Я использую MS Access в качестве backend javascript для отправки данных со страницы формы на страницу, которая просматривает информацию и возвращает ее на страницу формы. – James