Значение массива в строку в PHP - PullRequest
0 голосов
/ 24 февраля 2019

У меня есть некоторый код, который случайным образом выбирает данные из базы данных, но всякий раз, когда я печатаю данные в браузере, это выглядит так - ["data"].Я хочу, чтобы это была четкая строка.Как я могу это сделать?Спасибо!

Вот код:

<?php 
   require '../wordbeater/adminpanel/includes/dbh.inc.php'; 

   $result=mysqli_query($con, "SELECT * FROM users ORDER BY RAND() LIMIT 6");

   $count = 0;
   while($row=mysqli_fetch_row($result)){
       $postsarray["one.$count."] = $row[1];
       $postsarray["two.$count."] = $row[2];
       $count++;
   }

   $encodedArray = array_map(utf8_encode, $postsarray);
   echo $encodedArray;


   mysqli_close($con);

   ?>

Ответы [ 4 ]

0 голосов
/ 24 февраля 2019

Попробуйте использовать:

   $result=mysqli_query($con, "SELECT * FROM users ORDER BY RAND() LIMIT 6");

   $count = 0;

   while ($row = $result->fetch_row()) {
         $postsarray["one.$count."] = $row[1];
         $postsarray["two.$count."] = $row[2];
         $count++;
    }
0 голосов
/ 24 февраля 2019

Вы можете напрямую сохранить его в переменной, чтобы он воспринимал ее как строку.например,

$stringone="";
$stringtwo="";
while($row=mysqli_fetch_assoc($result)){
$stringone.$count = $row["column_name_u_want_to_fetch"];
$stringtwo.$count = $row["2_column_name_u_want_to_fetch"];
$count++;

}

for($i=0; $i<mysqli_num_rows($result); $i++)
{

echo $stringone.$i;
echo $stringtwo.$i;
}
0 голосов
/ 24 февраля 2019

попробуйте, удалив 'ORDER BY RAND () LIMIT 6'

0 голосов
/ 24 февраля 2019

Я думаю, вам следует выбрать mysqli_fetch_assoc, поскольку он даст вам тот же ассоциативный массив, что и в вашей базе данных.например,

while($row=mysqli_fetch_assoc($result)){
   $postsarray["one.$count."] = $row["column_name_u_want_to_fetch"];
   $postsarray["two.$count."] = $row["2_column_name_u_want_to_fetch"];
   $count++;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...