PHP, пытаясь перебрать результаты базы данных MySQL

php loops

54 просмотра

1 ответ

Добрый день, я пытаюсь создать форму, которая будет искать результаты в базе данных MySQL и отображать результаты с помощью цикла. У меня есть два варианта поиска, один с использованием идентификатора, а другой с использованием строки. Поиск по идентификатору работает нормально, поскольку идентификаторы уникальны, а один результат - это результат, который я могу распечатать, но я пытаюсь адаптировать его к функции, которую я могу используйте для обоих, так как строка должна возвращать результаты списка, которые необходимо будет циклически просмотреть. Результат возвращается как объект, и именно здесь я изо всех сил пытаюсь получить цикл, чтобы дать список атрибутов и ключей для каждого результата, так как он повторяется для каждого ключа => Значение отлично, но нужно знать, как идти сначала через каждый объект, затем ключ => значение.

В моем классе это код поиска, который я использую:

public static function find_by_qual_id($qual_id){
        global $database;
        $clean_qual_id = $database->escape_value($qual_id);
        $result_array = static::find_by_sql("SELECT * FROM sdp WHERE qual_id='{$clean_qual_id}' LIMIT 1");
        return !empty($result_array) ? array_shift($result_array) : false;
        return $result_array;
    }

На странице это цикл (который не работает):

if(isset($qual_id)){
            $qual_info = Qual_lookup::find_by_qual_id($search_qual_id);
            if($qual_info != null){
                echo "<h4>RESULTS FOUND FOR \"{$search_qual_id}\"</h4>";
                echo "<div><form name=\"found_qual\"><table>";
                foreach($qual_info as $qual){
                    foreach($qual as $key => $value){
                        echo "<tr><td>{$key} : </td><td">{$value}</td></tr>";
                    }
                }
            } else {
                echo "No results found for \"{$search_qual_id}\"";
            }
            echo "</table></form></div>";
        }
Автор: WarrenThePHPNoob Источник Размещён: 08.11.2019 11:11

Ответы (1)


0 плюса

Хорошо, я нашел проблему ... по какой-то причине у меня есть 2 оператора возврата в классе:

return !empty($result_array) ? array_shift($result_array) : false;
return $result_array;

удаление первого оператора возврата теперь делает эту работу ... кажется.

Автор: WarrenThePHPNoob Размещён: 20.08.2016 11:42
Вопросы из категории :
32x32