Arvore de informações

1. Arvore de informações

steffano de moura barbosa cardoso
steffano

(usa Slackware)

Enviado em 07/11/2007 - 10:37h

E ae galera do vol... To precisando de uma ajuda de voces... Fiz esse algoritmo aki, pra gerar uma arvore de pessoas... tippo tem o codigo 1 2 e 3. no codigo 2 tem um campo no banco q tem o 1 ( pra amarrar os dados ), no cara 3 tem um campo com o codigo 2... edai por diante... um depende do outro.... Bom... Minha lógica ta funfando, só q to apanhando pra criar niveis.... por exemplo o nº 1 é o nivel zero...o nº2 q tem o nº1 como referencia é o nivel 1... e assim por diante... tem como alguem me ajudar? valeusss....

class Mysql {

protected $conexao = false;
protected $servidor = "localhost";
protected $usuario = "root";
protected $senha = "123";
protected $banco = "tiensbr_att";

function conectaDB(){

$this->linkdb = mysql_connect($this->servidor, $this->usuario, $this->senha);

if ($this->linkdb) {

$this->conexao = true;

$this->select_db = mysql_select_db($this->banco);
}

else {

echo"Favor checar sua conexão com os dados.";
}
}

function fecha_link() {

$this->fechar = mysql_close($this->linkdb);
$this->conexao = false;
}
}

class Mapa extends Mysql {

public $nivel = 0;

function pai($cod, $mes) {

$mes = "ts".date("y").$mes;

if($this->conexao = true) {

$this->query_pai = "SELECT bh, xm, xj, tbh, grxf, grxfbv, zw, pw, lj1, lj FROM $mes
WHERE bh='".$cod."'";

$this->exec_query_pai = mysql_query($this->query_pai) or die ("<b><font color='#FF0000'>O mapa para esta data está indisponivel</font></b>");

while($this->map = mysql_fetch_array($this->exec_query_pai)) {

echo "<tr><td class='dataTD'>".$this->nivel."</td>";
echo "<td class='dataTD' >".$this->map['bh']."</td>";
echo "<td class='dataTD' >".$this->map['xm']."</td>";
echo "<td class='dataTD' >".$this->map['tbh']."</td>";
echo "<td class='dataTD' >".$this->map['xj']."</td>";
echo "<td class='dataTD' >".$this->map['grxf']."</td>";
echo "<td class='dataTD' >".$this->map['grxfbv']."</td>";
echo "<td class='dataTD' >".$this->map['zw']."</td>";
echo "<td class='dataTD' >".$this->map['pw']."</td>";
echo "<td class='dataTD' >".$this->map['lj1']."</td>";
echo "<td class='dataTD' >".$this->map['lj']."</td>";

$mapa = new Mapa;
$mapa->nivel++;
$mapa->geramapa($this->map['bh'], $mes, $mapa->nivel++);

}
}
}

function geramapa($codigo, $mes, $nv) {

if($this->conexao = true) {

$this->query = "SELECT bh, xm, xj, tbh, grxf, grxfbv, zw, pw, lj1, lj FROM $mes
WHERE tbh='".$codigo."'";

$this->exec_query = mysql_query($this->query) or die ("erro na query");

while($mapeando = mysql_fetch_array($this->exec_query)) {

echo "<tr><td class='dataTD'>".$nv."</td>";
echo "<td class='dataTD' >".$auxbh = $mapeando['bh']."</td>";
echo "<td class='dataTD' >".$auxxm = $mapeando['xm']."</td>";
echo "<td class='dataTD' >".$auxxm = $mapeando['tbh']."</td>";
echo "<td class='dataTD' >".$auxxm = $mapeando['xj']."</td>";
echo "<td class='dataTD' >".$auxxm = $mapeando['grxf']."</td>";
echo "<td class='dataTD' >".$auxxm = $mapeando['grxfbv']."</td>";
echo "<td class='dataTD' >".$auxxm = $mapeando['zw']."</td>";
echo "<td class='dataTD' >".$auxxm = $mapeando['pw']."</td>";
echo "<td class='dataTD' >".$auxxm = $mapeando['lj1']."</td>";
echo "<td class='dataTD' >".$auxxm = $mapeando['lj']."</td>";

$mapa = new Mapa;
$mapa->geramapa($mapeando['bh'], $mes, $this->nivel);


}
}
}
}


  


2. Lamento mas com esse codigo nao dá...

Gedalias Costa
gedalinux

(usa Slackware)

Enviado em 07/11/2007 - 21:27h

Ola meu caro, adoro ajudar os colegas aqui no forum, mas com esse codigo nao dá voce programou duas classes sem nenhum conceito de OO, infelizmente so ajudarei quando:

1) corrigir a estrutura interna de dados das classes;
2) corrigir o encapsulamento;
3) quebrar o acoplamento forte;
4) remover o código estruturado que está dentro das classes;
5)modificar o escopo de alguns dados que embora tenha escopo de metodo voce deu escopo de objeto;
6) etc.

Desculpe-me, contudo para seu aprendizado volte conserte tudo e por favor depois volte aqui com o código corrigido e lhe ajudarei num passo a passo


Até a volta






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts