Ir ao conteúdo
  • Cadastre-se

Ajuda com Código - Ajax e JavaScript


Ir à solução Resolvido por MMM-DF,

Posts recomendados

Estou iniciando um site com sistema de carregamento de abas no Dreamweaver, mas parei em um erro que não consigo identificar. Há um arquivo que será o index que chamará outro com o script.

Arquivo index:
 
<?phprequire_once("tabs.php")?><!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><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>Criando Abas</title><?phptabs_header();?></head><body><div style = "width:600px;"><div align="center"><p><?phptabs_start();?><?phptab("Aba 1");?><strong> Este é o conteúdo da primeira aba</strong></p><?phptab("Aba 2");?><strong> Este é o conteúdo da segunda aba</strong></p><?phptab("Aba 3");?><strong> Este é o conteúdo da terceira aba</strong></p><p><?phptabs_end();?></body></html>. Arquivo tabs.php:<?php $tabs = array(); function tabs_header() {?>    <style type="text/css">.tab{padding:5px;border-left:1px solid black;border-top:1px solid black;border-right:1px solid black;border-bottom:1px solid black;text-align:center;font-family:Verdana, Arial, Helvetica, sans-serif;}.tab-active{padding:5px;border-left:1px solid black;border-top:1px solid black;border-right:1px solid black;text-align:center;font-family:Verdana, Arial, Helvetica, sans-serif;font-weight:bold;}.tab-content{padding:5px;border-left:1px solid black;border-top:1px solid black;border-right:1px solid black;border-bottom:1px solid black;}</style>        <?php }function tabs_start() {ob_start();}function endtab() {global $tabs;$text = ob_get_clean();$tabs [count($tabs)-1] ['text'] = $text;ob_start();}function tab($title){global $tabs;if (count ($tabs) > 0)endtab();$tabs [] = array('title' => $title, 'text' => "");}function tabs_end() {global $tabs;endtab();ob_end_clean();$index = 0;if ($_GET['tabindex'])$index = $_GET['tabindex'];?>    <table width="100%" cellspacing="0" cellpadding="0">    <tr>    <?php$baseuri = $_SERVER['REQUEST_URI'];$baseuri = preg_replace("/\?.*$/", "", $baseuri);$curindex = 0;foreach($tabs as $tab) {$class = "tab-active";?>        <td class="<?php echo($class); ?>">    <a href="<?php echo($baseuri."?tabindex=" .$curindex)?>">    <?php echo($tab['title']);?>        </a> </td>            <?php $curindex +=1;}?></tr><tr><td class="tab-content" colspan="<?php echo(count($tabs) +1);?>"><?php echo($tabs[$index]['text']);?></td></tr></table><?php}?>
. Mensagem de erro:
 

( ! ) Notice: Undefined index: tabindex in C:\Program Files (x86)\VertrigoServ\www\ajax-abas\tabs.php on line 70

Call Stack

#

Time

Memory

Function

Location

1

0.0050

334512

{main}( )

..\index.php:0

2

0.0093

394712

tabs_end( )

..\index.php:42

Será que alguém pode me ajudar com esse erro?
 
Obrigado!
Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois...

Olá
 
A mensagem não é bem um erro, mas um aviso que você tentou acessar um indice de array que ainda não foi definido.
No caso o indice tabindex da array $_GET
 

$index = 0;if ($_GET['tabindex'])$index = $_GET['tabindex'];

 
voce pode por o caracter '@' antes de $_GET['tabindex'] para suprimir a mensagen, pois você sabe que se $_GET['tabindex'] não estiver definido a variável $index terá o valor 0.

 

Saiba mais sobre aqui http://www.php.net/manual/pt_BR/language.operators.errorcontrol.php

Link para o comentário
Compartilhar em outros sites

  • Solução

Olá

 

A mensagem não é bem um erro, mas um aviso que você tentou acessar um indice de array que ainda não foi definido.

No caso o indice tabindex da array $_GET

 

$index = 0;if ($_GET['tabindex'])$index = $_GET['tabindex'];

 

voce pode por o caracter '@' antes de $_GET['tabindex'] para suprimir a mensagen, pois você sabe que se $_GET['tabindex'] não estiver definido a variável $index terá o valor 0.

 

Saiba mais sobre aqui http://www.php.net/manual/pt_BR/language.operators.errorcontrol.php

 

Valeu pela ajuda... Depois que eu postei mensagem vi que era apenas um notice. Estava querendo terminar o projeto logo e nem percebi isso.

 

Obrigado.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...