У меня есть этот код …
$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"];
}
Чтобы получить плоский массив результирующего набора, попробуйте это:
$result = array();
while ($row = mysql_fetch_assoc($results_result)) {
$result[$row['id']] = $row;
}
echo json_encode($result);
Кроме того, вы должны посмотреть либо MySQLi или же PDO заменить (теперь устаревшее) расширение MySQL.
Если вы используете PDO, вы можете использовать fetchAll()
метод:
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
С mysql или mysqli вы используете цикл:
$rows = array();
while ($row = $stmt->fetch_assoc()) {
$rows[] = $row;
}
попробуй это
$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"];
}