#php
#php
Вопрос:
Я хочу добавить столбец в mysql в массив.
я хочу таким образом
$php_framework = array("Stack", "Over", "Flow", "Php", "Sql");
я пробовал это, но не работает
$cek = $db->query("select * from anket order by cevap_id desc ",PDO::FETCH_ASSOC);
if(empty($cek)){echo "<br/><center><p><h1>Aradığın ile ilgili bişey yok.</h1><p></center>";}
foreach($cek as $m){
$php_framework = array($m['cevap']);
}
я хочу создать систему опроса. в $php_framework перечислены результаты
большое вам спасибо
Ответ №1:
Похоже, вы перезаписываете массив на каждой итерации. Сложно сказать наверняка, но попробуйте добавить элементы в массив.
<?php
...
// Initialize the array
$php_framework = array();
foreach($cek as $m){
// Keep appending elements to the array.
$php_framework[] = $m['cevap'];
}
var_dump($php_framework);
Ответ №2:
сначала вы не должны проверять результат запроса, проверяя его с помощью пустой функции
даже запросы, в которых нет ни одной записи, возвращают экземпляр класса PDOStatements, поэтому, даже если результат вашего запроса пуст, проверяя переменную запроса, вы не можете указать, имеет ли запрос какую-либо запись или нет
для проверки того, что в вашем запросе есть какая-либо запись, лучшим способом является использование rowCount, которое показывает вам количество строк результата вашего запроса. поэтому проверьте, что rowCount больше 0 или нет.
<?php
// query
$cek = $db->prepare('SELECT * FROM `anket` ORDER BY `cevap_id` DESC');
$cek->execute();
// checking query has any record or not
if($cek->rowCount() < 1){
print 'no record found!';
}else{
// your process
}
и, наконец, для сохранения значений столбца в массиве, вы должны создать его и в циклах помещать значение вашего столбца для каждой строки в каждом цикле итерации
<?php
// query
$cek = $db->prepare('SELECT * FROM `anket` ORDER BY `cevap_id` DESC');
$cek->execute();
// checking query has any record or not
if($cek->rowCount() < 1){
print 'no record found!';
}else{
// your array
$php_framework = [];
// your process
while($row = $cek->fetch(PDO::FETCH_ASSOC)){
$php_framework[] = $row['amirali']; // put your column name instead of "amirali"
}
print_r($php_framework);
// or
var_dump($php_framework);
}