Эксплорер не видит ...

Главные вкладки

Аватар пользователя DDDDD099 DDDDD099 17 марта 2011 в 11:18

Подскажите пожалуста почему эксплорер не видит результатов этого кода.

<table width="100%" style="background-image: url(<? echo $DOGARCHIVE_BASE_URL?>/images/header_background_new.gif); background-repeat: repeat;">
        <tr>
                <td>
                        <a href="<? echo $DOGARCHIVE_BASE_URL?>/index.php">
                                <img src="<? echo $DOGARCHIVE_BASE_URL?>/images/header.gif" alt="Logo">
                        </a>           
                </td>
                <td align="right">
               
                        <?php if ($_CURRENT_USER->is_anonymous) { ?>
                                <span class="navitem"><a href="<?php echo $USERS_BASE_URL;?>/login.php?returnto=<?php echo returnto_url_enc();?>">[ Login ]</a></span>
                        <?php } else { ?>
                                        <table width="100%" border="0"><tr>
                                <?php if ( ($_CURRENT_USER->can_edit_self()) && ($_CURRENT_USER->get_avatar() != null)) { ?>
                                                        <td rowspan="2">
                                                                <img src="<?php echo $_CURRENT_USER->get_avatar()?>" width="48px" height="48px"/>
                                                        </td>
                                <?php } ?>                                     
                                <?php if ($_CURRENT_USER->can_edit_self()) { ?>
                                                        <td><span class="navitem"><a class="buttonLink" href="<?php echo $USERS_BASE_URL;?>/logoff.php">[ Logoff ]</a></span></td>
                                                </tr>
                                                <tr>
                                                        <td><span class="navitem"><a class="buttonLink" href="<?php echo $USERS_BASE_URL;?>/users_edit.php?returnto=<?php echo returnto_url_enc();?>">[ My Profile ]</a></span></td>
                                                </tr>
                                <?php } ?>
                                        </table>
                        <?php } ?>     
                </td>
        </tr>
</table>

Комментарии

Аватар пользователя G.A. Vinogradov G.A. Vinogradov 17 марта 2011 в 14:56

М.б. потому что логика расстановки if/else и <tr></tr> несколько различается: во внутренней таблице

открывается всегда, а закрывается только в условном блоке:
if ($_CURRENT_USER->can_edit_self())
Аватар пользователя DDDDD099 DDDDD099 17 марта 2011 в 13:48

В других браузерах работает. Причем кнопку входа эксплорер видит а выхода и профиля нет. Может посоветуете как подправить. У меня пока только пришла идея повесить знак с перечеркнутым эксплорером.

Аватар пользователя Sentrashy@drupal.org Sentrashy@drupal.org 17 марта 2011 в 13:53

"G.A. Vinogradov" wrote:
М.б. потому что логика расстановки if/else и

А какая разница, не эксплорер же код обрабатывает.
Помоему тупо html и css смотреть надо. Я разве не прав?

Аватар пользователя G.A. Vinogradov G.A. Vinogradov 17 марта 2011 в 14:57

<a href="mailto:Sentrashy@drupal.org">Sentrashy@drupal.org</a> wrote:
"G.A. Vinogradov" wrote:
М.б. потому что логика расстановки if/else и

А какая разница, не эксплорер же код обрабатывает.
Помоему тупо html и css смотреть надо. Я разве не прав?

Эксплорер обрабатывает готовый HTML код. Из-за неправильного PHP кода в одном участке может быть незакрыт тег tr. Я даже не знаю, как себя поведет эксплорер при двух вложенных таблицах и нарушенной разметке.

P.S. Оказывается парсер съел теги в первой мессаге. Мой баг.

Аватар пользователя Sentrashy@drupal.org Sentrashy@drupal.org 17 марта 2011 в 15:33

"G.A. Vinogradov" wrote:
Эксплорер обрабатывает готовый HTML код.

та понятно, просто надо взять html из фаирфокса, допустим, и смотреть все тонкие моменты.
"DDDDD099" wrote:
эксплорер не видит результатов этого кода.

остальные то видят, помоему эти результаты и стоило показать, а не пхп.
Но это так, я не спец, просто мне кажется, что вот эта портянка сократилась бы до 10 строк, и может корифеи бы сходу бы ошибку увидели.

Аватар пользователя Dan Dan 17 марта 2011 в 17:43

Если html код неверный, его обработка в разных браузерах будет существенно отличаться.
ТС надо бы выучить функции апи для вывода контента, типа [ru-api=theme_table]theme('table'...)[/ru-api] и иже. Ибо код ужасен.

Аватар пользователя DDDDD099 DDDDD099 17 марта 2011 в 19:29

"Dan" wrote:
Если html код неверный, его обработка в разных браузерах будет существенно отличаться.

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

Аватар пользователя Dan Dan 17 марта 2011 в 20:38

Надо:
- смотреть не PHP-код, а результирующий.
- отключить стили, дабы исключить их влияние (для IE могут быть включены хаки)
- отключить скрипты

Получите чистый HTML (например wget-ом или просто сохраните браузером) и уже его смотрите.

Аватар пользователя Dan Dan 17 марта 2011 в 23:43

"DDDDD099" wrote:
Это не под друпал - скрипт сам по себе.

"DDDDD099" wrote:
А не может ли быть это связано с кодировкой.

Если это не друпал, то тут никто не ответит на этот вопрос. По идее - не должен.

Аватар пользователя G.A. Vinogradov G.A. Vinogradov 18 марта 2011 в 8:50
<table width="100%" style="background-image: url(<? echo $DOGARCHIVE_BASE_URL?>/images/header_background_new.gif); background-repeat: repeat;">
        <tr>
                <td>
                        <a href="<? echo $DOGARCHIVE_BASE_URL?>/index.php">
                                <img src="<? echo $DOGARCHIVE_BASE_URL?>/images/header.gif" alt="Logo">
                        </a>           
                </td>
                <td align="right">
 
                        <?php if ($_CURRENT_USER->is_anonymous) { ?>
                                <span class="navitem"><a href="<?php echo $USERS_BASE_URL;?>/login.php?returnto=<?php echo returnto_url_enc();?>">[ Login ]</a></span>
                        <?php } else { ?>
                                        <table width="100%" border="0"><tr>
                                <?php if ( ($_CURRENT_USER->can_edit_self()) && ($_CURRENT_USER->get_avatar() != null)) { ?>
                                                        <td rowspan="2">
                                                                <img src="<?php echo $_CURRENT_USER->get_avatar()?>" width="48px" height="48px"/>
                                                        </td>
                                <?php } ?>                                     
                                <?php if ($_CURRENT_USER->can_edit_self()) { ?>
                                                        <td><span class="navitem"><a class="buttonLink" href="<?php echo $USERS_BASE_URL;?>/logoff.php">[ Logoff ]</a></span></td>
                                                </tr>
                                                <tr>
                                                        <td><span class="navitem"><a class="buttonLink" href="<?php echo $USERS_BASE_URL;?>/users_edit.php?returnto=<?php echo returnto_url_enc();?>">[ My Profile ]</a></span></td>
                                               
                                <?php } ?>
                                        </tr></table>
                        <?php } ?>     
                </td>
        </tr>
</table>
Аватар пользователя DDDDD099 DDDDD099 18 марта 2011 в 9:54

Не совсем понял - но поставил - не работает.Дело в том что скрипт у автора работает нормально.Я только поменял кодировки и подгрузил библиотеку jqery для слайдера - может в этом причина. Но опять же другие браузеры видят.

Аватар пользователя Sentrashy@drupal.org Sentrashy@drupal.org 18 марта 2011 в 10:23

Ничего в этом не понимаю, конечно, но раз уж ничего не помогает, попробуйте вот так. Ничего не потеряете, в любом случае

<?php<table width="100%" style="background-image: url(<? echo $DOGARCHIVE_BASE_URL?>/images/header_background_new.gif); background-repeat: repeat;">
    <tr>
        <td>
            <a href="<? echo $DOGARCHIVE_BASE_URL?>/index.php">
                <img src="<? echo $DOGARCHIVE_BASE_URL?>/images/header.gif" alt="Logo">
            </a>        
        </td>
        <td align="right">
 
            <?php if ($_CURRENT_USER->is_anonymous)  ?>
                <span class="navitem"><a href="<?php echo $USERS_BASE_URL;?>/login.php?returnto=<?php echo returnto_url_enc();?>">[ Login ]</a></span>
            <?php  else  ?>
                    <table width="100%" border="0"><tr>
                <?php if ( ($_CURRENT_USER->can_edit_self()) && ($_CURRENT_USER->get_avatar() != null))  ?>
                            <td rowspan="2">
                                <img src="<?php echo $_CURRENT_USER->get_avatar()?>" width="48px" height="48px"/>
                            </td>
                <?php ?>                    
                <?php if ($_CURRENT_USER->can_edit_self())  ?>
                            <td><span class="navitem"><a class="buttonLink" href="<?php echo $USERS_BASE_URL;?>/logoff.php">[ Logoff ]</a></span></td>
                        </tr>
                        <tr>
                            <td><span class="navitem"><a class="buttonLink" href="<?php echo $USERS_BASE_URL;?>/users_edit.php?returnto=<?php echo returnto_url_enc();?>">[ My Profile ]</a></span></td>
                        </tr>
                <?php ?>
                    </table>
            <?php ?>    
        </td>
    </tr>
</table>?>
Аватар пользователя DDDDD099 DDDDD099 18 марта 2011 в 19:02

"<a href="mailto:Sentrashy@drupal.org">Sentrashy@drupal.org</a>" wrote:

стили вот у этого - class="buttonLink" - есть? и какие?


Нет стилей. Наверно я что-то поменял и это сказалось - менял кодировку и библиотеки. Прийдется назад прокручивать.