Как написать этот код в MySQL правильно?


Я пытаюсь адаптироваться к mysqli_ видно, что mysql_ может быть в любой момент прекращена, что теперь появились новые понятия, такие как mysqli_ и pdo. Я пытаюсь написать этот сценарий, который тянет данные из базы данных, но не работает. Что может быть не так?

        <select id="rsvpQuem" name="rsvpQuem">
            <option value="">Selecione uma opção...</option>
            <?php
            $query  = "SELECT * FROM tbl_convidados";
            $result = $mysqli->query($query);

            while($row = $result->fetch_array()){ ?>
                <option value="<?=$row['id']?>"><?=$row['nome']?></option>  
            <?php } ?>
        </select>

Оставляя решение моей проблемы для будущих запросов, закончил с использованием PDO, как было указано в целях безопасности и простоты. Ниже код:

        <select id="rsvpQuem" name="rsvpQuem">
            <option value="">Selecione uma opção...</option>
            <?php
                $consulta = $db->prepare('SELECT * FROM tbl_convidados');
                $consulta->execute();
                while ($linha = $consulta->fetch(PDO::FETCH_ASSOC)) {
                    echo "<option value=".$linha['id'].">".$linha['nome']."</option>";
                }
            ?>
        </select>
 3
Author: Marcos Vinicius, 2014-08-15

2 answers

Измените $result = $mysqli->query($query); $result = mysqli::query($query);. Но рекомендую использовать PDO, из-за большей безопасности, что позволит adiquirir.

 3
Author: Leonardo Patricio, 2014-08-15 14:24:24

Без ошибки становится сложно помочь, но, похоже, вы это с помощью функции неправильно, чтобы просмотреть результат.

Попробуйте переключить $resultado->fetch_array() $resultado->fetch_assoc()

Документации: http://php.net/manual/pt_BR/class.mysqli-result.php http://php.net/manual/pt_BR/mysqli-result.fetch-assoc.php

 2
Author: Marcos, 2014-08-15 14:17:51