Jump to content

Recommended Posts

.Qual servidor ou website você utiliza como base? 

OTX2

 

Qual o motivo deste tópico? 

Estou colocando o widget do castlewar no meu Site. 

Porém ao colocar o script abaixo em /layout.php não estou conseguindo nenhum resultado...

Quando removi a primeira do script que executa a Query no layout.php, citada abaixo, a imagem do castlewar aparece, mas não informa a guild que dominiou.

 

No phpmyadmin executei a seguinte ação para criar a tabela:

 CREATE TABLE IF NOT EXISTS `castelo_guerra` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `guild` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=17 ;

INSERT INTO `castelo_guerra` (`id`, `guild`) VALUES
(1, 1); 

 

Na lib está incluso:

function guildVencedora()
    local name
    local consulta = db.getResult("SELECT `guild` FROM `castelo_guerra` ORDER BY `id` DESC;")
    if (consulta:getID() ~= -1) then
        name = tonumber(consulta:getDataInt('guild'))
    else
        return 0
    end
    return name
end

 

No .lua Quando o castle é dominado está incluso:

doPlayerSendTextMessage(cid, 20, "[Castle of Honor] Você e sua guild estão no comando, os antigos donos ["..tostring(getGlobalStorageValue(COH_STATUS)).."] podem se vingar!")
       setGlobalStorageValue(COH_PREPARE1, -1)
       setGlobalStorageValue(COH_PREPARE2, -1)
         db.query("INSERT INTO `castelo_guerra` (`guild`) VALUES (" .. getPlayerGuildId(cid) .. ");")

 

 

image.png.8d20318ef1322393cfb5914c7e3c613f.png

 

Ao excluir essas linha do script que foi incluso no layout.php a imagem aparece conforme acima, mas não traz resultado! Quando ela continua não aparece nada.

Citar

<?php 
$consulta = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` ASC;'); 
$number_of_rows = 0; 

 

Você tem o código disponível? Se tiver publique-o aqui: 

 

<div class="sidebar">
  <?php 
$consulta = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` ASC;'); 
$number_of_rows = 0; 

foreach($consulta as $guildid){
    $id = $guildid['guild'];
}
$consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>
<style type="text/css" media="all">
   .name {
    position: relative;
    top:40px;
    text-align: center;
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 9.2pt;
    color: #FFF;
    font-weight: bold;
   }
   .logo {
    position: relative;
    top: 50px;
    text-align: center;
   }
  .CastleWarbox {
    position: relative;
    margin-top: 160px;
    margin-bottom: 5px;
    width: 200px;
    height: 200px;
  }
</style>
    <div id="CastleWar" class="CastleWarbox" style="background-image:url(https://i.imgur.com/ASZv7fN.png);">
         <?php
        if ($guild) {
        ?>
            <div class="logo">
                 <img style="max-height:100px;" src="<?php logo_exists($guild['name']); ?>">
            </div>
            <div class = "name">
                <?php echo '<br><a href="guilds.php?name='.$guild['name'].'">'.$guild["name"].'</a><br>';?>
            </div>
                        
        <?php
        }else ?>
        <div class = "name">
                <?php echo '<br><br><br><p>No Have Owner</p><br>';?>
        </div>
   </div>
</div>


 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

51 minutos atrás, ferizk disse:

.Qual servidor ou website você utiliza como base? 

OTX2

 

Qual o motivo deste tópico? 

Estou colocando o widget do castlewar no meu Site. 

Porém ao colocar o script abaixo em /layout.php não estou conseguindo nenhum resultado...

Quando removi a primeira do script que executa a Query no layout.php, citada abaixo, a imagem do castlewar aparece, mas não informa a guild que dominiou.

 

No phpmyadmin executei a seguinte ação para criar a tabela:

 CREATE TABLE IF NOT EXISTS `castelo_guerra` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `guild` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=17 ;

INSERT INTO `castelo_guerra` (`id`, `guild`) VALUES
(1, 1); 

 

Na lib está incluso:

function guildVencedora()
    local name
    local consulta = db.getResult("SELECT `guild` FROM `castelo_guerra` ORDER BY `id` DESC;")
    if (consulta:getID() ~= -1) then
        name = tonumber(consulta:getDataInt('guild'))
    else
        return 0
    end
    return name
end

 

No .lua Quando o castle é dominado está incluso:

doPlayerSendTextMessage(cid, 20, "[Castle of Honor] Você e sua guild estão no comando, os antigos donos ["..tostring(getGlobalStorageValue(COH_STATUS)).."] podem se vingar!")
       setGlobalStorageValue(COH_PREPARE1, -1)
       setGlobalStorageValue(COH_PREPARE2, -1)
         db.query("INSERT INTO `castelo_guerra` (`guild`) VALUES (" .. getPlayerGuildId(cid) .. ");")

 

 

image.png.8d20318ef1322393cfb5914c7e3c613f.png

 

Ao excluir essas linha do script que foi incluso no layout.php a imagem aparece conforme acima, mas não traz resultado! Quando ela continua não aparece nada.

 

Você tem o código disponível? Se tiver publique-o aqui: 

 

<div class="sidebar">
  <?php 
$consulta = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` ASC;'); 
$number_of_rows = 0; 

foreach($consulta as $guildid){
    $id = $guildid['guild'];
}
$consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>
<style type="text/css" media="all">
   .name {
    position: relative;
    top:40px;
    text-align: center;
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 9.2pt;
    color: #FFF;
    font-weight: bold;
   }
   .logo {
    position: relative;
    top: 50px;
    text-align: center;
   }
  .CastleWarbox {
    position: relative;
    margin-top: 160px;
    margin-bottom: 5px;
    width: 200px;
    height: 200px;
  }
</style>
    <div id="CastleWar" class="CastleWarbox" style="background-image:url(https://i.imgur.com/ASZv7fN.png);">
         <?php
        if ($guild) {
        ?>
            <div class="logo">
                 <img style="max-height:100px;" src="<?php logo_exists($guild['name']); ?>">
            </div>
            <div class = "name">
                <?php echo '<br><a href="guilds.php?name='.$guild['name'].'">'.$guild["name"].'</a><br>';?>
            </div>
                        
        <?php
        }else ?>
        <div class = "name">
                <?php echo '<br><br><br><p>No Have Owner</p><br>';?>
        </div>
   </div>
</div>


 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

Atualizei para o script abaixo no layout.php, a frase ( No Have Owner ) saiu, Porém não apareceu o logo da guild.

 

 <div class="sidebar">
<?php 

$guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` WHERE `id`;');
foreach($consulta as $guildid){
    $id = $guildid['guild'];
}
$consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>
<style type="text/css" media="all">
   .name {
    position: relative;
    top:40px;
    text-align: center;
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 9.2pt;
    color: #FFF;
    font-weight: bold;
   }
   .logo {
    position: relative;
    top: 50px;
    text-align: center;
   }
  .CastleWarbox {
    position: relative;
    margin-top: 160px;
    margin-bottom: 5px;
    width: 200px;
    height: 200px;
  }
</style>
    <div id="CastleWar" class="CastleWarbox" style="background-image:url(https://i.imgur.com/ASZv7fN.png);">
         <?php
        if ($guild) {
        ?>
            <div class="logo">
                 <img style="max-height:100px;" src="<?php logo_exists($guild['name']); ?>">
            </div>
            <div class = "name">
                <?php echo '<br><a href="guilds.php?name='.$guild['name'].'">'.$guild["name"].'</a><br>';?>
            </div>
                        
        <?php
        }else ?>
        <div class = "name">
                <?php echo '<br><br><br><p>No Have Owner</p><br>';?>
        </div>
   </div>
</div>

Link to post
Share on other sites

1 hora atrás, ferizk disse:

.Qual servidor ou website você utiliza como base? 

OTX2

 

Qual o motivo deste tópico? 

Estou colocando o widget do castlewar no meu Site. 

Porém ao colocar o script abaixo em /layout.php não estou conseguindo nenhum resultado...

Quando removi a primeira do script que executa a Query no layout.php, citada abaixo, a imagem do castlewar aparece, mas não informa a guild que dominiou.

 

No phpmyadmin executei a seguinte ação para criar a tabela:

 CREATE TABLE IF NOT EXISTS `castelo_guerra` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `guild` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=17 ;

INSERT INTO `castelo_guerra` (`id`, `guild`) VALUES
(1, 1); 

 

Na lib está incluso:

function guildVencedora()
    local name
    local consulta = db.getResult("SELECT `guild` FROM `castelo_guerra` ORDER BY `id` DESC;")
    if (consulta:getID() ~= -1) then
        name = tonumber(consulta:getDataInt('guild'))
    else
        return 0
    end
    return name
end

 

No .lua Quando o castle é dominado está incluso:

doPlayerSendTextMessage(cid, 20, "[Castle of Honor] Você e sua guild estão no comando, os antigos donos ["..tostring(getGlobalStorageValue(COH_STATUS)).."] podem se vingar!")
       setGlobalStorageValue(COH_PREPARE1, -1)
       setGlobalStorageValue(COH_PREPARE2, -1)
         db.query("INSERT INTO `castelo_guerra` (`guild`) VALUES (" .. getPlayerGuildId(cid) .. ");")

 

 

image.png.8d20318ef1322393cfb5914c7e3c613f.png

 

Ao excluir essas linha do script que foi incluso no layout.php a imagem aparece conforme acima, mas não traz resultado! Quando ela continua não aparece nada.

 

Você tem o código disponível? Se tiver publique-o aqui: 

 

<div class="sidebar">
  <?php 
$consulta = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` ASC;'); 
$number_of_rows = 0; 

foreach($consulta as $guildid){
    $id = $guildid['guild'];
}
$consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>
<style type="text/css" media="all">
   .name {
    position: relative;
    top:40px;
    text-align: center;
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 9.2pt;
    color: #FFF;
    font-weight: bold;
   }
   .logo {
    position: relative;
    top: 50px;
    text-align: center;
   }
  .CastleWarbox {
    position: relative;
    margin-top: 160px;
    margin-bottom: 5px;
    width: 200px;
    height: 200px;
  }
</style>
    <div id="CastleWar" class="CastleWarbox" style="background-image:url(https://i.imgur.com/ASZv7fN.png);">
         <?php
        if ($guild) {
        ?>
            <div class="logo">
                 <img style="max-height:100px;" src="<?php logo_exists($guild['name']); ?>">
            </div>
            <div class = "name">
                <?php echo '<br><a href="guilds.php?name='.$guild['name'].'">'.$guild["name"].'</a><br>';?>
            </div>
                        
        <?php
        }else ?>
        <div class = "name">
                <?php echo '<br><br><br><p>No Have Owner</p><br>';?>
        </div>
   </div>
</div>


 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

Atualizei para o script abaixo no layout.php, a frase ( No Have Owner ) saiu, Porém não apareceu o logo da guild.

 

 <div class="sidebar">
<?php 

$guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` WHERE `id`;');
foreach($consulta as $guildid){
    $id = $guildid['guild'];
}
$consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>
<style type="text/css" media="all">
   .name {
    position: relative;
    top:40px;
    text-align: center;
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 9.2pt;
    color: #FFF;
    font-weight: bold;
   }
   .logo {
    position: relative;
    top: 50px;
    text-align: center;
   }
  .CastleWarbox {
    position: relative;
    margin-top: 160px;
    margin-bottom: 5px;
    width: 200px;
    height: 200px;
  }
</style>
    <div id="CastleWar" class="CastleWarbox" style="background-image:url(https://i.imgur.com/ASZv7fN.png);">
         <?php
        if ($guild) {
        ?>
            <div class="logo">
                 <img style="max-height:100px;" src="<?php logo_exists($guild['name']); ?>">
            </div>
            <div class = "name">
                <?php echo '<br><a href="guilds.php?name='.$guild['name'].'">'.$guild["name"].'</a><br>';?>
            </div>
                        
        <?php
        }else ?>
        <div class = "name">
                <?php echo '<br><br><br><p>No Have Owner</p><br>';?>
        </div>
   </div>
</div>


Se já está mostrando em seu site o nome da guild vencedora, porém não mostra a imagem da mesma. Confira no log do site o erro que retorna, ele fica localizado em var/logs/apache2/error.log caso utilize nginx o diretório é o mesmo apenas muda apache2 por nginx ficando var/logs/nginx/error.log
Ao conferir o log você vai descobrir se o problema está por conta de 1 função que não está retornando o que deveria, ou 1 coluna do banco de dados que não possui um valor correto, ou algo do gênero. Qualquer novidade, poste aqui ou se eventualmente ainda tiver alguma dúvida, fique a vontade para perguntar.
Considere também entrar no Discord da Academia de Programação, lá você pode tirar suas dúvidas, ajudar outros membros, trocar conhecimento e até descolar alguns freelance. Link: https://discord.gg/sH54JnMJKt

Quem eu sou?
Meu nome é Waliston, mais conhecido como Endless, estudante de Análise e Desenvolvimento de Sistemas, e desenvolvedor da Falcon Games. Atuo no Ramo de OtServer desde 2017, porém desde 2019 venho me especializando em Desenvolvimento Web e Segurança Web..

Meus Projetos:

Falcon Games

Meu Github:

https://github.com/WalistonBelles

Meu Discord:
Endless#5410

Minhas Contribuições atualmente pra Comunidade:

[SHOWOFF] OTClient Showoff Módules
[DESIGN]
 3 FREE Game Ui Design

[TUTORIAL] Instalando MyAAC em sua máquina

[TUTORIAL] Restringindo a Listagem de Diretórios(URL) do Servidor Apache
[TUTORIAL] Proteção contra DDoS utilizando Mod-evasive no Apache

[SISTEMA] Plugin MyAAC Listagem de Items automática
[SISTEMA] Gerador de Outfits Automática para o Site

[SISTEMA] Sistema de Troca de Vocação para MyAAC
[SISTEMA] Plugin MyAAC Auction System
[SISTEMA] Sistema de Exibir Monstros por Level


Algum trabalho meu te ajudou? Quer apoiar meu trabalho? Faça uma doação!!
Picpay: @walistonbelles
Paypal: suporte.falcongames@gmail.com

Link to post
Share on other sites

11 minutos atrás, Endless disse:


Se já está mostrando em seu site o nome da guild vencedora, porém não mostra a imagem da mesma. Confira no log do site o erro que retorna, ele fica localizado em var/logs/apache2/error.log caso utilize nginx o diretório é o mesmo apenas muda apache2 por nginx ficando var/logs/nginx/error.log
Ao conferir o log você vai descobrir se o problema está por conta de 1 função que não está retornando o que deveria, ou 1 coluna do banco de dados que não possui um valor correto, ou algo do gênero. Qualquer novidade, poste aqui ou se eventualmente ainda tiver alguma dúvida, fique a vontade para perguntar.
Considere também entrar no Discord da Academia de Programação, lá você pode tirar suas dúvidas, ajudar outros membros, trocar conhecimento e até descolar alguns freelance. Link: https://discord.gg/sH54JnMJKt

Certo, obrigado Endless.

Ao encontrar o arquivo me deparei com isso:

 

[error] 3277#3277: *368329 FastCGI sent in stderr: "PHP message: PHP Warning:  Invalid argument supplied for foreach() in /var/www/html/layouts/tibiarl/layout.php on line 624

Referente a essa codigo: foreach($consulta as $guildid){ $id = $guildid['guild'];

 

PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function logo_exists() in /var/www/html/layouts/tibiarl/layout.php:657

Referente a esse codigo: <div class="logo">
                 <img style="max-height:100px;" src="<?php logo_exists($guild['name']); ?>">

 

Poderia me auxiliar como posso atuar nesses dois pontos?

 

Link to post
Share on other sites

18 minutos atrás, ferizk disse:

Certo, obrigado Endless.

Ao encontrar o arquivo me deparei com isso:

 

[error] 3277#3277: *368329 FastCGI sent in stderr: "PHP message: PHP Warning:  Invalid argument supplied for foreach() in /var/www/html/layouts/tibiarl/layout.php on line 624

Referente a essa codigo: foreach($consulta as $guildid){ $id = $guildid['guild'];

 

PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function logo_exists() in /var/www/html/layouts/tibiarl/layout.php:657

Referente a esse codigo: <div class="logo">
                 <img style="max-height:100px;" src="<?php logo_exists($guild['name']); ?>">

 

Poderia me auxiliar como posso atuar nesses dois pontos?

 


 

A resposta é simples. No seu código antigo você tinha a seguinte sequência de código:

<?php 
    $consulta = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` ASC;'); 
    $number_of_rows = 0; 

    foreach($consulta as $guildid){
        $id = $guildid['guild'];
    }
    $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>


No seu código novo você tem a seguinte sequência de código:
 

<?php 

    $guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` WHERE `id`;');
    foreach($consulta as $guildid){
        $id = $guildid['guild'];
    }
    $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>


Acontece que, você manteve o foreach na variável $consulta, porém ela não existe mais, quem possui agora o resultado da query é a variável $guild. O certo seria você fazer:
 

<?php 

    $guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` WHERE `id`;');
    foreach($guild as $guildid){
        $id = $guildid['guild'];
    }
    $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>


Porém você não está passando 1 condição certa em sua Query, você está dizendo: Selecione a coluna GUILD da tabela CASTELO_GUERRA onde id...

E pronto, você não disse qual é a condição pro ID. Como você quer saber a última guild que foi registrado como Dominante do castelo, você deve fazer 1 seleção, ordenando pelo ID em ordem Decrescente, ou seja, o 1° valor que vai retornar é o último a ser inserido, e limitar essa seleção em 1. Logo temos:
 

SELECT `guild` FROM `castelo_guerra` ORDER BY `id` DESC LIMIT 1;


Tendo essa seleção sendo realizada, armazene o valor em 1 variável, pode ser a variável que você criou $guild.
 

$guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` DESC LIMIT 1;');


Agora que temos o resultado da seleção salvo em 1 variável, vamos descobrir o nome dessa guild, visto que a tabela castelo_guerra somente armazena o ID da guild vencedora. 
 

foreach($guild as $guildid){
    $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$guildid['guild'].';');
}


Executamos 1 foreach (não é a melhor maneira, mas deve resolver nosso problema) passando como condição em nosso código SQL o ID da guild dominante que está armazenado na coluna guild na variável $guild, e armazenamos o resultado dessa operação na variável $consulta2.

Agora podemos fazer 1 teste e conferir se existe algum valor armazenado na variável $consulta2, se sim, então fazemos um foreach e mostramos a guild dominante no site.

 

if ($consulta2) {
    foreach($consulta2 as $guildDominante){
        echo '<a href="guilds.php?name='.$guildDominante['name'].'"><div class="logo"><img style="max-height:100px;" src="' . logo_exists(guildDominante['name'] . '"></div><br><div class = "name">'.$guildDominante["name"].'</div></a><br>';
    }
} else {
    echo '<div class = "name"><br><br><br><p>No Have Owner</p><br></div>';
}


 

PS: Eu desenvolvi esse foreach considerando que a função que você está chamando > logo_exists < funcione da forma que você já estava chamando antes.

Como resultado final temos o seguinte código para você colocar em seu layout.php:

 

<div class="sidebar">
<?php 
    $guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` WHERE `id`;');
    foreach($guild as $guildid){
        $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$guildid['guild'].';');
    }

?>
<style type="text/css" media="all">
   .name {
    position: relative;
    top:40px;
    text-align: center;
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 9.2pt;
    color: #FFF;
    font-weight: bold;
   }
   .logo {
    position: relative;
    top: 50px;
    text-align: center;
   }
  .CastleWarbox {
    position: relative;
    margin-top: 160px;
    margin-bottom: 5px;
    width: 200px;
    height: 200px;
  }
</style>
<div id="CastleWar" class="CastleWarbox" style="background-image:url(https://i.imgur.com/ASZv7fN.png);">
    if ($consulta2) {
        foreach($consulta2 as $guildDominante){
            echo '<a href="guilds.php?name='.$guildDominante['name'].'"><div class="logo"><img style="max-height:100px;" src="' . logo_exists(guildDominante['name'] . '"></div><br><div class = "name">'.$guildDominante["name"].'</div></a><br>';
        }
    } else {
        echo '<div class = "name"><br><br><br><p>No Have Owner</p><br></div>';
    }
   </div>
</div>


Testa e ve se vai funcionar. Espero que sim e que resolva seu problema.

Quem eu sou?
Meu nome é Waliston, mais conhecido como Endless, estudante de Análise e Desenvolvimento de Sistemas, e desenvolvedor da Falcon Games. Atuo no Ramo de OtServer desde 2017, porém desde 2019 venho me especializando em Desenvolvimento Web e Segurança Web..

Meus Projetos:

Falcon Games

Meu Github:

https://github.com/WalistonBelles

Meu Discord:
Endless#5410

Minhas Contribuições atualmente pra Comunidade:

[SHOWOFF] OTClient Showoff Módules
[DESIGN]
 3 FREE Game Ui Design

[TUTORIAL] Instalando MyAAC em sua máquina

[TUTORIAL] Restringindo a Listagem de Diretórios(URL) do Servidor Apache
[TUTORIAL] Proteção contra DDoS utilizando Mod-evasive no Apache

[SISTEMA] Plugin MyAAC Listagem de Items automática
[SISTEMA] Gerador de Outfits Automática para o Site

[SISTEMA] Sistema de Troca de Vocação para MyAAC
[SISTEMA] Plugin MyAAC Auction System
[SISTEMA] Sistema de Exibir Monstros por Level


Algum trabalho meu te ajudou? Quer apoiar meu trabalho? Faça uma doação!!
Picpay: @walistonbelles
Paypal: suporte.falcongames@gmail.com

Link to post
Share on other sites

27 minutos atrás, Endless disse:


 

A resposta é simples. No seu código antigo você tinha a seguinte sequência de código:


<?php 
    $consulta = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` ASC;'); 
    $number_of_rows = 0; 

    foreach($consulta as $guildid){
        $id = $guildid['guild'];
    }
    $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>


No seu código novo você tem a seguinte sequência de código:
 


<?php 

    $guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` WHERE `id`;');
    foreach($consulta as $guildid){
        $id = $guildid['guild'];
    }
    $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>


Acontece que, você manteve o foreach na variável $consulta, porém ela não existe mais, quem possui agora o resultado da query é a variável $guild. O certo seria você fazer:
 


<?php 

    $guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` WHERE `id`;');
    foreach($guild as $guildid){
        $id = $guildid['guild'];
    }
    $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$id.';'); 
?>


Porém você não está passando 1 condição certa em sua Query, você está dizendo: Selecione a coluna GUILD da tabela CASTELO_GUERRA onde id...

E pronto, você não disse qual é a condição pro ID. Como você quer saber a última guild que foi registrado como Dominante do castelo, você deve fazer 1 seleção, ordenando pelo ID em ordem Decrescente, ou seja, o 1° valor que vai retornar é o último a ser inserido, e limitar essa seleção em 1. Logo temos:
 


SELECT `guild` FROM `castelo_guerra` ORDER BY `id` DESC LIMIT 1;


Tendo essa seleção sendo realizada, armazene o valor em 1 variável, pode ser a variável que você criou $guild.
 


$guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` ORDER BY `id` DESC LIMIT 1;');


Agora que temos o resultado da seleção salvo em 1 variável, vamos descobrir o nome dessa guild, visto que a tabela castelo_guerra somente armazena o ID da guild vencedora. 
 


foreach($guild as $guildid){
    $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$guildid['guild'].';');
}


Executamos 1 foreach (não é a melhor maneira, mas deve resolver nosso problema) passando como condição em nosso código SQL o ID da guild dominante que está armazenado na coluna guild na variável $guild, e armazenamos o resultado dessa operação na variável $consulta2.

Agora podemos fazer 1 teste e conferir se existe algum valor armazenado na variável $consulta2, se sim, então fazemos um foreach e mostramos a guild dominante no site.

 


if ($consulta2) {
    foreach($consulta2 as $guildDominante){
        echo '<a href="guilds.php?name='.$guildDominante['name'].'"><div class="logo"><img style="max-height:100px;" src="' . logo_exists(guildDominante['name'] . '"></div><br><div class = "name">'.$guildDominante["name"].'</div></a><br>';
    }
} else {
    echo '<div class = "name"><br><br><br><p>No Have Owner</p><br></div>';
}


 

PS: Eu desenvolvi esse foreach considerando que a função que você está chamando > logo_exists < funcione da forma que você já estava chamando antes.

Como resultado final temos o seguinte código para você colocar em seu layout.php:

 


<div class="sidebar">
<?php 
    $guild = $SQL->query('SELECT `guild` FROM `castelo_guerra` WHERE `id`;');
    foreach($guild as $guildid){
        $consulta2 = $SQL->query('SELECT `name`, `logo_gfx_name` FROM `guilds` WHERE id = '.$guildid['guild'].';');
    }

?>
<style type="text/css" media="all">
   .name {
    position: relative;
    top:40px;
    text-align: center;
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 9.2pt;
    color: #FFF;
    font-weight: bold;
   }
   .logo {
    position: relative;
    top: 50px;
    text-align: center;
   }
  .CastleWarbox {
    position: relative;
    margin-top: 160px;
    margin-bottom: 5px;
    width: 200px;
    height: 200px;
  }
</style>
<div id="CastleWar" class="CastleWarbox" style="background-image:url(https://i.imgur.com/ASZv7fN.png);">
    if ($consulta2) {
        foreach($consulta2 as $guildDominante){
            echo '<a href="guilds.php?name='.$guildDominante['name'].'"><div class="logo"><img style="max-height:100px;" src="' . logo_exists(guildDominante['name'] . '"></div><br><div class = "name">'.$guildDominante["name"].'</div></a><br>';
        }
    } else {
        echo '<div class = "name"><br><br><br><p>No Have Owner</p><br></div>';
    }
   </div>
</div>


Testa e ve se vai funcionar. Espero que sim e que resolva seu problema.

Compreendi o que você me ensinou hoje! Agradeço muito.

 

O resultado foi esse abaixo, pelo menos apareceu alguma coisa rs

 

image.png.f175b4f8c5b08d3de0a15a29fa4bf603.png

 

Link to post
Share on other sites

1 minuto atrás, ferizk disse:

Compreendi o que você me ensinou hoje! Agradeço muito.

 

O resultado foi esse abaixo, pelo menos apareceu alguma coisa rs

 

image.png.f175b4f8c5b08d3de0a15a29fa4bf603.png

 


Se precisar de ajuda, entra lá no discord da academia que deixei o link acima, te ajudo sem problemas.

Quem eu sou?
Meu nome é Waliston, mais conhecido como Endless, estudante de Análise e Desenvolvimento de Sistemas, e desenvolvedor da Falcon Games. Atuo no Ramo de OtServer desde 2017, porém desde 2019 venho me especializando em Desenvolvimento Web e Segurança Web..

Meus Projetos:

Falcon Games

Meu Github:

https://github.com/WalistonBelles

Meu Discord:
Endless#5410

Minhas Contribuições atualmente pra Comunidade:

[SHOWOFF] OTClient Showoff Módules
[DESIGN]
 3 FREE Game Ui Design

[TUTORIAL] Instalando MyAAC em sua máquina

[TUTORIAL] Restringindo a Listagem de Diretórios(URL) do Servidor Apache
[TUTORIAL] Proteção contra DDoS utilizando Mod-evasive no Apache

[SISTEMA] Plugin MyAAC Listagem de Items automática
[SISTEMA] Gerador de Outfits Automática para o Site

[SISTEMA] Sistema de Troca de Vocação para MyAAC
[SISTEMA] Plugin MyAAC Auction System
[SISTEMA] Sistema de Exibir Monstros por Level


Algum trabalho meu te ajudou? Quer apoiar meu trabalho? Faça uma doação!!
Picpay: @walistonbelles
Paypal: suporte.falcongames@gmail.com

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By Wodbosparta
      rox
       
      Suporte
       
      nao
       
      nao
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • By Wodbosparta
      .rox
       
      ajuda
       
      nao
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • By Dinizz
      .Qual servidor ou website você utiliza como base? 
      NTO Hard
      Qual o motivo deste tópico? 
      Estou tendo muitas dificuldades.
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • By Wodbosparta
      rox
       
      ajuda
       
      nao. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
      local combat = createCombatObject()
      setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)
      local condition = createConditionObject(CONDITION_ATTRIBUTES)
      setConditionParam(condition, CONDITION_PARAM_TICKS, 30000)
      setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, 35)
      setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 35)
      setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, 35)
      setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, 35)
      setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, 35)
      setConditionParam(condition, CONDITION_PARAM_BUFF, true)
      setCombatCondition(combat, condition)
      function onCastSpell(cid, var)
          if exhaustion.check(cid, 13101) == TRUE then
              doPlayerSendCancel(cid, "Podera usar novamente dentro de 30 segundos.")
              doSendMagicEffect(getCreaturePosition(cid), 2)
              return false
          end
          for k = 1, 100 do
              addEvent(function()
                  if isCreature(cid) then
                      local pos1 = {x = getPlayerPosition(cid).x + 0, y = getPlayerPosition(cid).y + 0, z = getPlayerPosition(cid).z}
                      doSendMagicEffect(pos1, 287)
                  end
              end, 1 + ((k-1) * 300))
          end
          exhaustion.set(cid, 13101, 30.0)
          return doCombat(cid, combat, var)
      end
       
       
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • By SuigetsuPK
      Bom dia, boa tarde e boa noite pra todos que abriram esse tópico. 6 tão bão?
       
      Recentemente eu estou bem desiludido com os OTs da vida. A maioria são coisas bem genéricas e limitadas e por isso eu gostaria de desenvolver algo que suprisse a minha necessidade de jogador. Aqui é um lugar bem vasto em conhecimento e tenho certeza que posso  encontrar várias coisas aqui, mas um detalhezinho me impede: não sei por onde começar.
      Sério, são várias linguagens de programação, pixelart, mapping, balanceamentos, pelo visto tem que manjar de webdesign e mais um monte de coisas pra poder criar algo do zero e sem experiência... Alguém pode me ajudar? Uma dica por onde começar, o que focar, aprender primeiro, etc...
       
      Desde já agradeço pela atenção
       
       
         
       
       
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...

Important Information

Confirmação de Termo