Получить массив строк из запроса MySQL?

У меня есть этот код …

$results_query = "SELECT * FROM profile WHERE string LIKE '%" . $search_deliminator . "%'";
$results_result = $database->query($results_query);
$result = mysql_fetch_array($results_result);

То, что я пытаюсь сделать, это потянуть все ряды, в которых строка столбец содержит мой разделитель поиска. Кроме того, я хотел бы получить значения из каждого столбца строк.

Как вытащить многомерный массив, который мне нужен, содержащий каждую строку и каждое значение каждого столбца в каждой строке?

РЕДАКТИРОВАТЬ:

Я пытаюсь что-то сделать для этого …

while ($row = mysql_fetch_assoc($results_result)) {

$result[] = $row;

}

Затем повторить каждый столбец, как это …

foreach ($result as $row) {
echo $row["0"];
}

2

Решение

Чтобы получить плоский массив результирующего набора, попробуйте это:

$result = array();

while ($row = mysql_fetch_assoc($results_result)) {
$result[$row['id']] = $row;
}

echo json_encode($result);

Кроме того, вы должны посмотреть либо MySQLi или же PDO заменить (теперь устаревшее) расширение MySQL.

5

Другие решения

Если вы используете PDO, вы можете использовать fetchAll() метод:

$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);

С mysql или mysqli вы используете цикл:

$rows = array();
while ($row = $stmt->fetch_assoc()) {
$rows[] = $row;
}
2

попробуй это

$i=0;
while ($row = mysql_fetch_assoc($results_result)) {

$result[$i]["column1"] = $row["column1"];
$result[$i]["column2"] = $row["column2"];
$i++;
}

Для отображения вывода используйте:

foreach ($result as $row) {
echo $row["column1"];
echo $row["column2"];
}
1
По вопросам рекламы [email protected]