Intereting Posts
SQLSTATE : Недопустимый номер параметра: количество связанных переменных не совпадает с числом токенов в строке 102 Определить версию iOS ниже, чем iOS 8 php Передача JSON-кодированной переменной из PHP в Javascript через POST Ожидайте завершения внешнего метода до окончания? Помещение нескольких форм на одну страницу Как создать пользовательский ActionColumn в gridView yii2? Как обновить PRIMARY KEY / FOREIGN KEY в других связанных таблицах? Вставить в массив в определенном месте Ассоциативный массив PHP Implode Любой надежный API, доступный для определения города и страны пользователя с IP-адреса Неустранимая ошибка: класс не найден с использованием груши в xampp Вызов функции PHP, определенной в другом пространстве имен без префикса Как переписать URL-адрес, чтобы удалить знак вопроса Передача / Возвращение ссылок на объект + изменение объекта не работает Подключение динамической базы данных Codeigniter

Проверка симптомов с помощью php-mysql

У меня есть таблица «Результат»:

введите описание изображения здесь

там будет страница, где все симптомы будут в поле «Флажок». Когда кто-нибудь проверяет некоторые из них и нажимает кнопку SUBMIT, страница переадресовывается на другую страницу, где будет отображаться возможный результат.

Возможный результат: если (Головная боль, Температура, Легкие головные уборы) проверяется, то ответ будет Pneomonia и Malarya. потому что эти симптом распространены в этих двух случаях.

я сделал таблицу. Но не может думать о запросе. Пожалуйста, дайте мне идею / решение.

Я использую phpmysql.

Solutions Collecting From Web of "Проверка симптомов с помощью php-mysql"

#tblDiseases - holds all disease names ###################################### diseaseID | disease ----------------------- 1 Tifoyd 2 Jondis 3 Malarya 4 Pneomonia 5 Dengu #tblSymptoms - holds all symptoms ################################# symptomID | symptom ------------------------- 1 Headache 2 Temparature 3 Less Pain 4 Sever Pain 5 Mussle Pain #tblRel - holds relation between diseases and symptoms ###################################################### relID | dieaseID | symptomID ----------------------------- 1 1 1 2 1 2 3 3 1 4 3 2 5 3 3 

Когда выбрано 3 симптома, запрос будет выглядеть так:

 SELECT tblDiseases.disease FROM tblRel LEFT JOIN tblDiseases ON tblRel.diseaseID = tblDiseases.diseaseID WHERE tblRel.symptomID = '1' AND tblRel.symptomID = '2' AND tblRel.symptomID = '3' 

Это позволит выбрать болезни с симптомами Headache , Temperature и Less Pain . Таким образом, запрос может показать результат Malaria (на примере).

Я не тестировал этот код. 🙂 Я надеюсь, что это сработает.

как уже сказали другие, оптимизируйте свой дБ, а затем попробуйте. Если для следующей опции попробуйте:

 $arrInput = $_POST['your check Var Name']; $strSQL = sprintf("select * from result where symptom in ('%s')", implode("','", $arrInput)); $objRes = mysql_query( $strSQL );