Как через foreach чередовать классы?) Например: <div class="tyleA">Текст</div> затем <div class="tyleB">Текст</div> потом опять <div class="tyleA">Текст</div> итд) думаю это не сложно
Invision Какая кавайная фоточка, мрррр ^__^ Я за неё тебе даже решение напишу: PHP: <?php foreach($array as $j => $value) { if(!($j % 2)) { // class A } else { // class B } } Держи, сладенький
Вот еще вопрос) так по нубски писать или сойдет PHP: $db->query("SELECT * FROM news INNER JOIN news_cat ON news_cat.cat_id = news.cat_id WHERE active=1 ORDER BY id_news DESC limit $start,$per_page"); while($row = $db->get_row()) { $new_title = $row['title']; if (strlen($new_title)>55) { $new_title=substr($new_title,0,55)."..."; } $view_content[] = array("id_news" => $row['id_news'], "cat_id" => $row['cat_id'], "author" => $row['author'], "image" => $row['image'], "title" => $new_title, "short" => $row['short'], "full" => $row['full'], "views" => $row['views'], "comments" => $row['comments'], "date" => fromDateTime($row['date']), "cat_name" => $row['cat_name']); $ctn = $row['cat_name']; }
Метод должен возвращать результат, если это не экземпляр класса, отвечающего за работу с указателем на единственный результат. Человеческими словами: Плохой вариант: Код (Text): $db->query(...); $row = $db->get_row() Хороший вариант: Код (Text): $query = $db->query(...); $row = $query->get_row()
Это класс PHP: <?php class mysql { private $mysql_error = ''; private $mysql_version = ''; private $mysql_error_num = 0; private $show_error = true; public $query_num = 0; public $connect = false; public $result = false; public $time_taken = 0; public function __construct( $show_error = true ) { $this->show_error = $show_error; if(!$this->connect = @mysql_connect( DB_HOST, DB_USER, DB_PASS )) { if( $show_error ) $this->display_error(mysql_error(), mysql_errno()); else return false; } if(!@mysql_select_db(DB_NAME, $this->connect)) { if( $show_error ) $this->display_error(mysql_error(), mysql_errno()); else return false; } $this->mysql_version = mysql_get_server_info(); if(!defined('COLLATE')) define ('COLLATE', 'cp1251'); if (version_compare($this->mysql_version, '4.1', ">=")) mysql_query('/*!40101 SET NAMES \'' . COLLATE . '\' */'); return true; } public function __destruct() { @mysql_close($this->connect); } public function query( $query, $once = false ) { $time_before = $this->get_real_time(); if(!($this->result = mysql_query( $query, $this->connect ) ) && $this->show_error) { $this->mysql_error = mysql_error(); $this->mysql_error_num = mysql_errno(); $this->display_error($this->mysql_error, $this->mysql_error_num, $query); } $this->query_num ++; $this->time_taken += $this->get_real_time() - $time_before; if( $once ) return mysql_fetch_assoc( $this->result ); return $this->result; } public function get_row() { return mysql_fetch_assoc( $this->result ); } public function get_array() { return mysql_fetch_array( $this->result ); } public function num_rows() { return mysql_num_rows( $this->result ); } public function free() { return mysql_free_result( $this->result ); } public function safe( $source ) { return mysql_real_escape_string($source); } private function get_real_time() { list($seconds, $microSeconds) = explode(' ', microtime()); return ((float)$seconds + (float)$microSeconds); } private function display_error($error, $error_num, $query = '') { if($query) { $query = preg_replace("/([0-9a-f]){32}/", "********************************", $query); $query_str = "$query"; } if(!isset($query_str)) { $query_str = ""; } die(' <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>MySQL Fatal Error</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <style type="text/css"> <!-- body { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; font-style: normal; color: #000000; } --> </style> </head> <body> <font size="4">MySQL Error!</font> <br />------------------------<br /> <br /> <u>The Error returned was:</u> <br /> <strong>'.$error.'</strong> <br /><br /> </strong><u>Error Number:</u> <br /> <strong>' . $error_num . '</strong> <br /> <br /> <textarea name="" rows="10" cols="52" wrap="virtual">' . $query_str . '</textarea><br /> </body> </html>'); } }
блин а я думаю какого х* вывод ошибок так похож на dle`шный) думаю косят под него еще) аха) http://3wforums.ru/topic/5153-poleznie- ... __p__20176 так это правда dle`шный? оО А то я начал говнокод портала царапать и класс для работы с базой нарыл, получается нарушение авторских прав и тюрьма( это подстава подстав
Invision 90% кода в теме - код движка DLE. Я раньше работал с DLE очень тесно: писал к нему модули, интеграции, да и сейчас этим грешу изредка по просьбам друзей. Код этого движка я знаю как свой собственный со всеми его минусами.
Чтобы не плодить постов тут же еще спрошу) PHP: if(isset($_GET['delete'])) { $id_deleted = check($_GET['delete']); $db->query("DELETE FROM news WHERE id_news='$id_deleted'"); $db->query("UPDATE news_cat SET total_news=total_news-1 WHERE cat_id=[тут_ид]"); $accept[] = "Новость успешно удалена."; } Есть способ взять значение в какой категории находится новость которую я буду удалять и отнять значение там в коде видно как)) ? Просто я думаю будет тупо смотреться если я перед удалением сделаю что то типо PHP: $db->query("SELECT * FROM news WHERE id_news='$id_deleted'"); $row = $db->get_row(); и из row буду доставать ид категории удаляемой новости.. Наверняка есть способ попроще?)) Поместить в гет еще и ид категории?)) Тогда можно просто другую подставить) p.s check функция проверяет и юзает реалстринг =))