#php #mysql
#php #mysql
Вопрос:
я новичок в php или в программировании, я мало что знаю в php. У меня есть вопрос, и он, вероятно, прост для вас, ребята, у меня возникла проблема с отображением данных из базы данных mysql, у меня есть этот код:
<?php
$getfriend= mysql_query("SELECT * from members");
$friend=mysql_fetch_array($getfriend);
$rowfriend=mysql_num_rows($getfriend);
//$users = array()--->i think i have to put it into a array, but i don't know how
if($rowfriend>1){
for ($x=0; $x < 10; $x ){
echo '<tr><td name =""><img src="" alt="" width="50" height="50" /> </td></tr>';
}
}
?>
я хочу показать изображения, имена, пол, день рождения и так далее… это все из базы данных mysql. я использовал здесь так называемый цикл for просто для контроля того, сколько строк я собираюсь отобразить на странице. мой код работает, он показывает 3. проблема здесь в том, что я не знаю, как поместить его содержимое в td. ребята, могут мне помочь в этом?
Комментарии:
1.документация по использованию. Привыкайте к чтению.
2. Чтобы добавить к предыдущему комментарию.
mysql
не защищен. Используйтеmysqli
или даже лучшеPDO
. Вы можете игнорировать предупреждение, но в долгосрочной перспективе это будет стоить вам.
Ответ №1:
Как насчет того, чтобы попробовать что-то вроде этого:-
$connection = mysql_connect('localhost', 'root', ''); //The Blank string is the password for your db
mysql_select_db('your_db_name');
$query = "SELECT * from members";
$result = mysql_query($query);
echo "<table>"; // start a table tag in the HTML
while($row = mysql_fetch_array($result)){ //Creates a loop to loop through results
echo "<tr><td>" . $row['name'] . "</td><td>" . $row['age'] . "</td></tr>"; //$row['index'] the index here is a field name
}
echo "</table>"; //Close the table in HTML
mysql_close();
Здесь я использую цикл while для перебора выбранных строк, и я нахожу это самым простым способом сделать это.
Я бы также рекомендовал перейти на mysqli и PDO (если вы полны решимости изучить новые концепции), поскольку mysql обесценился.
РЕДАКТИРОВАТЬ: Спросили, как ограничить записи в БД
Просто измените способ написания запросов Select на что-то вроде этого:-
Query SELECT * FROM table LIMIT 0,5 //will return 5 records starting from the first record.
Query SELECT * FROM table LIMIT 5 //will also give the same result as above query.
Если в этой таблице меньше 5 записей, то она не завершится ошибкой, а вернет все имеющиеся там записи.
Query SELECT * FROM table LIMIT 6,5 //will return record 7,8,9,10,11 as the index starts from 0.
Дает ли это вам четкое представление?
Комментарии:
1. приведенный выше код уже подключен к mysql, и он показывает 3 td, потому что у меня есть 3 строки в моей базе данных. будет ли этот ваш код отображать все данные из базы данных?
2. извините, я думаю, что должен попробовать
3. Он покажет все данные, вам нужно добавить поля, которые вы хотите отобразить, используя $row[‘field_name’] выше
4. спасибо, извините, я не могу проголосовать за вас, потому что я новичок на этом сайте… больше возможностей .. 🙂
5. Пожалуйста, загуглите для этого «переменная сеанса php», и, конечно, если вы хотите ограничить количество извлекаемых записей, вы можете использовать правку, которую я внес в свой ответ.