оченть странный глюк...

jeno

Новичок
оченть странный глюк...

оч странный глюк...есть таблица mysql, в не йстолбик "type" ( tinyint(1) ), есть 6 записей, в 3х из них в столбике "type" стоит "0" а в остальных 3х стоит "1"

на пхп я вывожу информацию через цыкл:

PHP:
while($res=$db->sql_fetch_object($result))
{
	if($res->type==1){
		.....
		.....
	}
	.....
	.....
}
с запросом mysql все в порядке, даже не знаю в чем проблема :)
проверял $res->type на is_numeric, оно говорит что там число...выводил все в браузер, там действительно 3 нуля и 3 единицы...через phpmyadmin смотрел...даже не знаю...странно очень...поскажите как это исправить плз!
з.ы.если это важно, php5, freebsd 6.0, mysql 5.1.11-beta

Спасибо! надеюсь это можно исправить :rolleyes: :rolleyes:

PHP:
#
# Структура таблицы `cp_soft_categories`
#

CREATE TABLE `cp_pmb_cat` (
  `id` varchar(150) NOT NULL,
  `ind` varchar(150) NOT NULL,
  `title` varchar(150) NOT NULL,
  `nav` varchar(255) NOT NULL,
  `description` varchar(255) NOT NULL,
  `type` tinyint(1) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
 

WP

^_^
А в чем проблема? Не догнал.
Покажи запрос, дамп таблиц, и скажи что тебя не устраивает.
 

WP

^_^
з.ы. я попросил дамп, а не только структуру. И где запрос?
 

jeno

Новичок
>А в чем сама проблема?
в том что IF работает не правильно...грубо говоря...

то есть, я ему пишу: если type равен 1му, только тогда выполнять определенные дейсвия
а он меня игнорирует...даже если в столбике написано "0", он всеровно думает что это 1.....
 

MajestiC

Пых
PHP:
while($res=$db->sql_fetch_object($result)) 
{ 
    var_dump($res->type);
    if($res->type==1){ 
        echo "type is 1";
    } 
}
 

jeno

Новичок
с запросом все ок, все данные он через цыкл выводит нормально...
перед этим самым IF пишу print $res->type; и оно мне выдает "0"...
вообще, если даже $res->type равен 0му, if($res->type==1) серовно возвращает true :'(

-~{}~ 01.12.06 18:09:

string(1) "1"
string(1) "1"
string(1) "1"
string(1) "0"
string(1) "0"
string(1) "0"
вот что дал var_dump($res->type);
 

WP

^_^
jeno
Нужно не вставать в позу обиженного говоря что "я всё сделал верно, а он меня игнорирует, прям не знаю где ошибка", а пошагово разобраться. Сначала окинуть взлядом запрос, выполнить его в консоле. Затем вывести переменные. var_dump($res); и увидишь ряды результата.
----
Хорошо, теперь ты видишь что всё правильно. if ($res->type == '1') {echo $res->type.' == 1';}
 

jeno

Новичок
PHP:
$result=$db->sql_query("SELECT `id`,`title`,`description`,`type` FROM `cp_pmb_cat` WHERE `ind`='".$_GET['id']."';");

while($res=$db->sql_fetch_object($result))
{
	var_dump($res->type);
	if($res->type==1){
		$type="&op=plist";
	}
	?>
	<a href="index.php?p=<?=$this->mod_name?><?=$type?>&id=<?=$res->id?>">GOOO!!!</a>
	<?
}
 

WP

^_^
Хахахахаха...... в юмор!
if($res->type==1){
$type="&op=plist";
} else {$type = '';}
 

jeno

Новичок
млин...от я.....простите все за невнемательность! вообще не хотел на форум писать, просто ужо 2 часа мучаюсь...все волосы повырывал ужо...
 
Сверху