Я работаю над проектом php, где пользователи могут выбрать марку и модель автомобиля из формы, и это приведет к поиску продуктов, которые применяются для этой конкретной комбинации. Когда я запускаю запрос в SQL, и есть несколько продуктов, я получаю несколько строк. но когда я пытаюсь показать эти результаты с помощью PHP, я получаю только 1 строку. У вас есть идея, что я делаю неправильно? вот код:SQL-запрос, возвращающий только 1 строку
$query1 = "SELECT * FROM partmakes WHERE MAKE = '$_POST[make]' and MODEL ='$_POST[model]'";
$results1 = mysqli_query($cnx, $query1);
$row1 = mysqli_fetch_assoc($results1);
$query2 = "SELECT * FROM `products` WHERE `PARTNO`= '$row1[PARTMAKE1]' OR (`PARTNO`=
'$row1[PARTMAKE2]' OR `PARTNO`= '$row1[PARTMAKE3]' OR `PARTNO`= '$row1[PARTMAKE4]');";
$results2 = mysqli_query($cnx, $query2);
echo "These are the products for your car:<br />";
while ($row2 = mysqli_fetch_assoc($results2)){
extract($row2);
echo "$row2[PARTNO]<br />";
}
Спасибо большое за вашу помощь
редактировать - содержимое из файла OP в http://standtek.com.mx/test/screenshots.docx в комментариях
Таким образом, пользователь будет выбирать из выпадающего Марка и модель автомобиля. Первый запрос ищет марку и модель в таблице:
Затем я использую информацию из столбцов PARTMAKE в качестве ссылки для второго запроса
Вот пример запроса в PHPMyAdmin, и это показывает 4 строки:
Мой текущий скрипт отображает только один ряд по некоторым причинам:
Это то, что я хочу отображаться в результатах:
Вместо 2 отдельных запросов, вы могли бы сделать это в 'JOIN' запроса. Что-то вроде - 'SELECT * FROM products JOIN partmakes ON (products.PARTNO = partmakes.PARTMAKE1 OR products.PARTNO = partmakes.PARTMAKE2 ИЛИ продукты.PARTNO = частьmakes.PARTMAKE3 OR products.PARTNO = partmakes.PARTMAKE4) WHERE partmakes.MAKE = '$ _POST [make]' AND partmakes.MODEL = '$ _ POST [model]' '. обратите внимание, убедитесь, что вы дезинфицируете свои пользовательские данные. – Sean
Это дает мне 1 строку с остальной частью PARTMAKES в конце строки. Я ищу, чтобы получить отдельные строки для каждого PARTMAKE. Что-то вроде этого: PARTNO DESC PRICE 1 Что-то 10.50 2 другие вещи 7.50 – Eduardo
Можете ли вы предоставить некоторые данные из двух таблиц и показать желаемый результат. – Sean