[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: проблема с цыклом
mro
только начал изучать ПХП

создаю клас для работы с базой данных с использованием PDO

есть метод класа который выводит содержымое таблицы в зависимости от переданых в него имен столбцов или вывод всех столбцов по дефолту

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

я предполагаю что проблема в цыкле вот только не могу понять где

class database{
var $db_host='*';
var $db_name='*';
var $db_user='*';
var $db_pswd='*';

function showRecords($sql,$vCols='all'){

$dsn=$this->db_host;
$username=$this->db_user;
$password=$this->db_pswd;

$checkQ=explode(' ', $sql);
if ($checkQ[0]== 'SELECT' OR $checkQ[0]== 'select'){ //проверка или точно был СЕЛЕКТ
try {
$db = new PDO("mysql:host=$dsn;dbname=db",$username,$password);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

$res = $db->query($sql);
$colsNum= $res->columnCount();

///////////////////////////////start show rows///////////////////////////////
while ($row = $res->fetch(PDO::FETCH_BOTH)){// <- generate row
print '<tr>';
switch ($vCols){
case 'all'://<- show all coll
for($i=0; $i<$colsNum; $i++){
print '<td>'.$row[$i].'</td>';
}
break;
default :// собственно проблемная часть
$vCols=explode(',',$vCols);
$vColsNum=count($vCols);
for($i=0; $i<$vColsNum; $i++){
print '<td>'.$row[$vCols[$i]].'</td>';
}
break;
}
print '</tr>';
}
///////////////////////////////end show rows///////////////////////////////

$db = NULL;
}
catch (PDOException $e) {
echo $e->getMessage();
}

}
else print '<strong>'.$checkQ[0]."</strong> not allowed!!";
}
}


заранее спасибо



Спустя 7 минут, 38 секунд (14.10.2011 - 16:57) vital написал(а):
В русском языке после буквы Ц всегда пишется буква И, кроме исключений: цЫган, цЫпочки, цЫкнуть, цЫц.
В слове класс - 2 буквы с.
В слове переданных - две буквы Н. Суффиксы Анн-Янн, почитайте.

После такого русского - нету никакого желания читать явно еще более убогий код.
Нафига классы писать в пхп 4 стайл - это бред.
А еще больший бред - писать класс, в котором выводить данные пользователю напрямую.. Это ничем не отличается от обычного структурного программирования.

Не делайте того, чего не знаете. Тупо копипастить любой попавшийся код из гугла - глупо.

Спустя 2 минуты, 51 секунда (14.10.2011 - 16:59) mro написал(а):
спасибо хД

видимо ваша аватарка соответствует тому кто вы на самом деле хД

и для справки: я не русский и его не изучал, да и на раздел форума не мешало бы вам посмотреть

Спустя 5 минут, 10 секунд (14.10.2011 - 17:05) vital написал(а):
Цитата (mro @ 14.10.2011 - 15:59)
спасибо хД

видимо ваша аватарка соответствует тому кто вы на самом деле хД

и для справки: я не русский и его не изучал, да и на раздел форума не мешало бы вам посмотреть

А я вообще вредный.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.