Каковы различные способы прокрутки набора результатов mysql? Я новичок в PHP и MySQL, поэтому я ищу простые способы прокрутки и объяснение того, как работает предоставленный код.
Вот полный пример:
http://php.net/manual/en/mysqli-result.fetch-array.php
первый пример, который приходит мне на ум:
<?php $link = mysql_connect(/*arguments here*/); $query = sprintf("select * from table"); $result = mysql_query($query, $link); if ($result) { while($row = mysql_fetch_array($result)) { // do something with the $row } } else { echo mysql_error(); } ?>
Если вы используете MySQL версии 4.1.3 или новее, настоятельно рекомендуется использовать расширение mysqli вместо [расширения mysql, которое еще не разработано, не поддерживает функции MySQL 4.1+, без подготовленных и нескольких операторов, имеет нет объектно-ориентированного интерфейса, …]
см. mysqli-stmt.fetch для процедурных и объектно-ориентированных способов циклического выполнения набора результатов mysqli.
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } $sql = "SELECT * FROM table"; $result = $conn->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { ?> //Loop Content... Example:- **<li><?php echo $row[name]; ?></li>** <?php }}; ?>
Я бы рекомендовал создать функцию базы данных, которая действует как обертка для вашей выборки базы данных. Легче отключить вызовы функций базы данных и даже вниз, тип самой базы данных (например, mysql-> postgresql или mysql-> couchdb или с помощью объекта PDO или что-то еще).
Некоторая функция, которую вы создаете, принимает запрос и возвращает полностью ассоциативный массив, а затем вы вставляете код подключения к базе данных внутри.
Также может быть полезно проверить использование PDO в будущем, поскольку он абстрагирует от вас конкретные функции базы данных, работая с mysql, postgresql и т. Д.