• TibiaFace

    Tibiaface | Una comunidad Open Tibia donde encontras : mapas, scripts, Otserver, npc y amigos etc ...

    .
    demo menumenu

    Afiliados



    Votar:

    Error en Pagina web Znote aac

    Compartir:

    Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 1.)

    1default Error en Pagina web Znote aac el Miér Mar 11, 2020 3:16 pm

    aquazx

    aquazx
    Nuevo Miembro
    Nuevo Miembro
    Hola, en la pagina web de mi ot server todo funciona relativamente bien, excepto el shop, no dice los puntos que tiene la persona y dice esto:

    You have
    Notice: Trying to access array offset on value of type bool in C:\xampp\htdocs\shop.php on line 96

    2default Re: Error en Pagina web Znote aac el Miér Mar 11, 2020 5:13 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    por que seguramente le falta a tu base de datos la tabla premium_points tendrias que verificar si existe tal tabla en la tabla account en etu mysql phpadmin



    Error en Pagina web Znote aac YNU5B25
    https://www.tibiaface.com

    3default Re: Error en Pagina web Znote aac el Miér Mar 11, 2020 5:57 pm

    aquazx

    aquazx
    Nuevo Miembro
    Nuevo Miembro
    Nop, acabo de revisar la tabla de accounts y tiene los premium_points, aunque tambien tiene coins en la tabla, apesar de que le ponga algun valor a los 2, no muestra sintoma de cambio.

    4default Re: Error en Pagina web Znote aac el Miér Mar 11, 2020 11:35 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:Nop, acabo de revisar la tabla de accounts y tiene los premium_points, aunque tambien tiene coins en la tabla, apesar de que le ponga algun valor a los 2, no muestra sintoma de cambio.

    y en la linea 96 de la shop que muestra si puedes pegar esa linea aqui



    Error en Pagina web Znote aac YNU5B25
    https://www.tibiaface.com

    5default Re: Error en Pagina web Znote aac el Jue Mar 12, 2020 7:46 pm

    aquazx

    aquazx
    Nuevo Miembro
    Nuevo Miembro
    muestra este codigo en la linea 96 de shop.php

    ?><td>You have <?php echo $user_znote_data['points']; ?> points. (<a href="buypoints.php">Buy points</a>).</td><?php

    6default Re: Error en Pagina web Znote aac el Jue Mar 12, 2020 8:53 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:muestra este codigo en la linea 96 de shop.php

    ?><td>You have <?php echo $user_znote_data['points']; ?> points. (<a href="buypoints.php">Buy points</a>).</td><?php

    pues dejame decirte que la tabla que busca tu znote se llama

    Código:
    points



    Error en Pagina web Znote aac YNU5B25
    https://www.tibiaface.com

    7default Re: Error en Pagina web Znote aac el Jue Mar 12, 2020 9:16 pm

    aquazx

    aquazx
    Nuevo Miembro
    Nuevo Miembro
    No crees curioso de que a pesar de que le cambie el nombre a la tabla de premium_points, por points, siga :v dando el error? incluso intente tambien cambiar el coins por points.

    Tambien por si ayuda al tema, estoy usando una version de servidor que usa tibia coins, asi que no se que tanto influya tener dos tipos de moneda, los coins y los points, puede que por eso nada mas lea los coins dentro del servidor, pero no veo por que no explica que aun asi no salgan los coins que tienes en la pag xD

    8default Re: Error en Pagina web Znote aac el Jue Mar 12, 2020 9:29 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:No crees curioso de que a pesar de que le cambie el nombre a la tabla de premium_points, por points, siga :v dando el error? incluso intente tambien cambiar el coins por points.

    Tambien por si ayuda al tema, estoy usando una version de servidor que usa tibia coins, asi que no se que tanto influya tener dos tipos de moneda, los coins y los points, puede que por eso nada mas lea los coins dentro del servidor, pero no veo por que no explica que aun asi no salgan los coins que tienes en la pag xD

    hay que ver que sucede ahi

    $user_znote_data['points']; en todo ese archivo



    Error en Pagina web Znote aac YNU5B25
    https://www.tibiaface.com

    9default Re: Error en Pagina web Znote aac el Jue Mar 12, 2020 9:42 pm

    aquazx

    aquazx
    Nuevo Miembro
    Nuevo Miembro
    xD y aqui acaba mi poco conocimiento del tema y pregunto, esa es la tabla que esta en la base de datos o es un archivo de htdocs xd?

    update:
    cree una cuenta, luego a esa cuenta, decia 0 points todo normal, luego cuando le done points con la cuenta administradora del sitio, dio el error.

    Acabo de encontrar, ese es el error, cuando doy points mediante la cuenta administradora, se bugea, pero cuando le cambie el valor en la tabla de znote_accounts, cambio el valor a 500 que fue lo que puse, sin bugearse, aunque dudo que eso se vea como los coins dentro del cliente xd, posiblemente sea eso una diferencia entre points y coins

    logre :v copiando un comando o no se como se llame, que modifica los points de znote para que updateara el coins de accounts que si son los coins del juego.
    pero eso sirve, asi que podria decir que el problema esta resuelto :3 gracias por la ayuda. ahora solo me queda ver como cuando compres algo en la pag en vez de usar los points de znote_account, use los coins de accounts, supongo que sera un interesante reto xD

    Very Happy Resuelto Gracias Very Happy



    Última edición por aquazx el Jue Mar 12, 2020 11:17 pm, editado 4 veces

    10default Re: Error en Pagina web Znote aac el Vie Mar 13, 2020 8:02 am

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:xD y aqui acaba mi poco conocimiento del tema y pregunto, esa es la tabla que esta en la base de datos o es un archivo de htdocs xd?

    update:
    cree una cuenta, luego a esa cuenta, decia 0 points todo normal, luego cuando le done points con la cuenta administradora del sitio, dio el error.

    Acabo de encontrar, ese es el error, cuando doy points mediante la cuenta administradora, se bugea, pero cuando le cambie el valor en la tabla de znote_accounts, cambio el valor a 500 que fue lo que puse, sin bugearse, aunque dudo que eso se vea como los coins dentro del cliente xd, posiblemente sea eso una diferencia entre points y coins

    logre :v copiando un comando o no se como se llame, que modifica los points de znote para que updateara el coins de accounts que si son los coins del juego.
    pero eso sirve, asi que podria decir que el problema esta resuelto :3 gracias por la ayuda. ahora solo me queda ver como cuando compres algo en la pag en vez de usar los points de znote_account, use los coins de accounts, supongo que sera un interesante reto xD

    Very Happy Resuelto Gracias Very Happy


    lo que se podria hacer es modificar tu shop para que le los coins no lo points

    pero si quieres trabajar asi depende de ti


    como te dije anteriormente para poder ver y analizar tengo que ver el archivo php



    Error en Pagina web Znote aac YNU5B25
    https://www.tibiaface.com

    11default Re: Error en Pagina web Znote aac el Vie Mar 13, 2020 7:05 pm

    aquazx

    aquazx
    Nuevo Miembro
    Nuevo Miembro
    intente modificar para que diera coins en vez de coins :v pero claramente no soy programador jajajk

    Código:
    <?php require_once 'engine/init.php';
    include 'layout/overall/header.php';

    if (isset($_GET['callback']) && $_GET['callback'] === 'processing') {
       echo '<script>alert("Seu pagamento está sendo processado pelo PagSeguro...");</script>';
    }

    // Import from config:
    $shop = $config['shop'];
    if ($shop['loginToView'] === true) protect_page();
    $loggedin = user_logged_in();

    $shop_list = $config['shop_offers'];

    if ($loggedin === true) {
       if (!empty($_POST['buy']) && $_SESSION['shop_session'] == $_POST['session']) {
          $time = time();
          $player_points = (int)$user_znote_data['points'];
          $cid = (int)$user_data['id'];
          // Sanitizing post, setting default buy value
          $buy = false;
          $post = (int)$_POST['buy'];
          
          foreach ($shop_list as $key => $value) {
             if ($key === $post) {
                $buy = $value;
             }
          }
          if ($buy === false) die("Error: Shop offer ID mismatch.");
          
          // Verify that user can afford this offer.
          if ($player_points >= $buy['points']) {
             $data = mysql_select_single("SELECT `points` FROM `znote_accounts` WHERE `account_id`='$cid';");
             if (!$data) die("0: Account is not converted to work with Znote AAC");
             $old_points = $data['points'];
             if ((int)$old_points != (int)$player_points) die("1: Failed to equalize your points.");
             // Remove points if they can afford
             // Give points to user
             $expense_points = $buy['points'];
             $new_points = $old_points - $expense_points;
             $update_account = mysql_update("UPDATE `znote_accounts` SET `points`='$new_points' WHERE `account_id`='$cid'");
             
             $data = mysql_select_single("SELECT `points` FROM `znote_accounts` WHERE `account_id`='$cid';");
             $verify = $data['points'];
             if ((int)$old_points == (int)$verify) die("2: Failed to equalize your points.". var_dump((int)$old_points, (int)$verify, $new_points, $expense_points));
             
             // If this is an outfit offer, convert array into an integer.
             if ($buy['type'] == 5) {
                if (is_array($buy['itemid'])) {
                   if (COUNT($buy['itemid']) == 2) $buy['itemid'] = ($buy['itemid'][0] * 1000) + $buy['itemid'][1];
                   else $buy['itemid'] = $buy['itemid'][0];
                }
             }

             // Do the magic (insert into db, or change sex etc)
             // If type is 2 or 3
             if ($buy['type'] == 2) {
                // Add premium days to account
                user_account_add_premdays($cid, $buy['count']);
                echo '<font color="green" size="4">You now have '.$buy['count'].' additional days of premium membership.</font>';
             } else if ($buy['type'] == 3) {
                // Character Gender
                mysql_insert("INSERT INTO `znote_shop_orders` (`account_id`, `type`, `itemid`, `count`, `time`) VALUES ('$cid', '". $buy['type'] ."', '". $buy['itemid'] ."', '". $buy['count'] ."', '$time')");
                echo '<font color="green" size="4">You now have access to change character gender on your characters. Visit <a href="myaccount.php">My Account</a> to select character and change the gender.</font>';
             } else if ($buy['type'] == 4) {
                // Character Name
                mysql_insert("INSERT INTO `znote_shop_orders` (`account_id`, `type`, `itemid`, `count`, `time`) VALUES ('$cid', '". $buy['type'] ."', '". $buy['itemid'] ."', '". $buy['count'] ."', '$time')");
                echo '<font color="green" size="4">You now have access to change character name on your characters. Visit <a href="myaccount.php">My Account</a> to select character and change the name.</font>';
             } else {
                mysql_insert("INSERT INTO `znote_shop_orders` (`account_id`, `type`, `itemid`, `count`, `time`) VALUES ('$cid', '". $buy['type'] ."', '". $buy['itemid'] ."', '". $buy['count'] ."', '$time')");
                echo '<font color="green" size="4">Your order is ready to be delivered. Write this command in-game to get it: [!shop].<br>Make sure you are in depot and can carry it before executing the command!</font>';
             }
             
             // No matter which type, we will always log it.
             mysql_insert("INSERT INTO `znote_shop_logs` (`account_id`, `player_id`, `type`, `itemid`, `count`, `points`, `time`) VALUES ('$cid', '0', '". $buy['type'] ."', '". $buy['itemid'] ."', '". $buy['count'] ."', '". $buy['points'] ."', '$time')");
             
          } else echo '<font color="red" size="4">You need more points, this offer cost '.$buy['points'].' points.</font>';
          //var_dump($buy);
          //echo '<font color="red" size="4">'. $_POST['buy'] .'</font>';
       }
    }

    if ($shop['enabled']) {
    ?>

    <h1>Shop Offers</h1>
    <?php
    if ($loggedin === true) {
       if (!empty($_POST['buy']) && $_SESSION['shop_session'] == $_POST['session']) {
          if ($user_znote_data['points'] >= $buy['points']) {
             ?><td>You have <?php echo (int)($user_znote_data['points'] - $buy['points']); ?> points. (<a href="buypoints.php">Buy points</a>).</td><?php
          } else {
             ?><td>You have <?php echo $user_znote_data['points']; ?> points. (<a href="buypoints.php">Buy points</a>).</td><?php
          }
       } else {
          ?><td>You have <?php echo $user_znote_data['points']; ?> points. (<a href="buypoints.php">Buy points</a>).</td><?php
       }
       if ($config['shop_auction']['characterAuction']) {
          ?>
          <p>Interested in buying characters? View the <a href="auctionChar.php">character auction page!</a></p>
          <?php
       }
    } else {
       ?><p>You need to be logged in to use the shop.</p><?php
    }

    $outfitsIds = array(136,137,138,139,140,141,142,147,148,149,150,155,156,157,158,252,269,270,279,288,324,336,366,431,433,464,466,471,513,514,542,128,129,130,131,132,133,134,143,144,145,146,151,152,153,154,251,268,273,278,289,325,335,367,430,432,463,465,472,512,516,541);
    $category_items = array();
    $category_premium = array();
    $category_outfits = array();
    $category_mounts = array();
    $category_misc = array();
    foreach ($shop_list as $key => $offer) {
       
       switch ($offer['type']) {
          case 1:
             $category_items[$key] = $offer;
          break;
          case 2:
             $category_premium[$key] = $offer;
          break;
          case 3:
             $category_misc[$key] = $offer;
          break;
          case 4:
             $category_misc[$key] = $offer;
          break;
          case 5:
             $category_outfits[$key] = $offer;
          break;
          case 6:
             $category_mounts[$key] = $offer;
          break;
          default:
             $category_misc[$key] = $offer;
          break;
       }
    }

    // Render a bunch of tables (one for each category)
    ?>
    <div id="categoryNavigator">
       <a class="nav_link" href="#all">ALL</a>
       <?php if (!empty($category_items)): ?><a class="nav_link" href="#cat_itemids">ITEMS</a><?php endif; ?>
       <?php if (!empty($category_premium)): ?><a class="nav_link" href="#cat_premium">PREMIUM</a><?php endif; ?>
       <?php if (!empty($category_outfits)): ?><a class="nav_link" href="#cat_outfits">OUTFITS</a><?php endif; ?>
       <?php if (!empty($category_mounts)): ?><a class="nav_link" href="#cat_mounts">MOUNTS</a><?php endif; ?>
       <?php if (!empty($category_misc)): ?><a class="nav_link" href="#cat_misc">MISC</a><?php endif; ?>
    </div>
    <script type="text/javascript">
       function domReady () {
          var links = document.getElementsByClassName("nav_link");
          for (var i=0; i < links.length; i++) {
             links[i].addEventListener('click', function(e){
                e.preventDefault();
                // Hide all tables
                for (var x=0; x < links.length; x++) {
                   var hash = links[x].hash.substr(1);
                   if (hash != 'all') {
                      var table = document.getElementById(hash);
                      if (table.classList.contains("show")) {
                         table.classList.remove("show");
                         table.classList.add("hide");
                      }
                   }
                }
                // Display only the one we selected
                var hash = this.hash.substr(1);
                if (hash != 'all') {
                   var target = document.getElementById(hash);
                   if (target.classList.contains('hide')) {
                      target.classList.remove("hide");
                      target.classList.add("show");
                   }
                } else { // We clicked to show all tables
                   // Show all tables
                   for (var x=0; x < links.length; x++) {
                      var hash = links[x].hash.substr(1);
                      if (hash != 'all') {
                         var table = document.getElementById(hash);
                         if (table.classList.contains("hide")) {
                            table.classList.remove("hide");
                            table.classList.add("show");
                         }
                      }
                   }
                }
             });
          }
       }
       // Mozilla, Opera, Webkit
       if ( document.addEventListener ) {
          document.addEventListener( "DOMContentLoaded", function(){
          document.removeEventListener( "DOMContentLoaded", arguments.callee, false);
          domReady();
         }, false );
       // If IE event model is used
       } else if ( document.attachEvent ) {
          // ensure firing before onload
          document.attachEvent("onreadystatechange", function(){
          if ( document.readyState === "complete" ) {
             document.detachEvent( "onreadystatechange", arguments.callee );
             domReady();
          }
          });
       }
    </script>

    <?php if (!empty($category_items)): ?>
       <!-- ITEMIDS -->
       <table class="show" id="cat_itemids">
          <tr class="yellow">
             <td>Item:</td>
             <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
             <td>Count:</td>
             <td>Points:</td>
             <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
          </tr>
          <?php foreach ($category_items as $key => $offers): ?>
             <tr class="special">
                <td><?php echo $offers['description']; ?></td>
                <?php if ($config['shop']['showImage']):?>
                   <td><img src="http://<?php echo $config['shop']['imageServer']; ?>/<?php echo $offers['itemid']; ?>.<?php echo $config['shop']['imageType']; ?>" alt="img"></td>
                <?php endif; ?>
                <td><?php echo $offers['count']; ?>x</td>
                <td><?php echo $offers['points']; ?></td>
                <?php if ($loggedin === true): ?>
                <td>
                   <form action="" method="POST">
                      <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                      <input type="hidden" name="session" value="<?php echo time(); ?>">
                      <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
                   </form>
                </td>
                <?php endif; ?>
             </tr>
          <?php endforeach; ?>
       </table>
    <?php endif; ?>
    <?php if (!empty($category_premium)): ?>
    <!-- PREMIUM DURATION -->
    <table class="show" id="cat_premium">
       <tr class="yellow">
          <td>Description:</td>
          <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
          <td>Duration:</td>
          <td>Points:</td>
          <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
       </tr>
       <?php foreach ($category_premium as $key => $offers): ?>
          <tr class="special">
             <td><?php echo $offers['description']; ?></td>
             <?php if ($config['shop']['showImage']):?>
                <td><img src="http://<?php echo $config['shop']['imageServer']; ?>/<?php echo $offers['itemid']; ?>.<?php echo $config['shop']['imageType']; ?>" alt="img"></td>
             <?php endif; ?>
             <td><?php echo $offers['count']; ?> Days</td>
             <td><?php echo $offers['points']; ?></td>
             <?php if ($loggedin === true): ?>
             <td>
                <form action="" method="POST">
                   <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                   <input type="hidden" name="session" value="<?php echo time(); ?>">
                   <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
                </form>
             </td>
             <?php endif; ?>
          </tr>
       <?php endforeach; ?>
    </table>
    <?php endif; ?>
    <?php if (!empty($category_outfits)): ?>
    <!-- OUTFITS -->
    <table class="show" id="cat_outfits">
       <tr class="yellow">
          <td>Description:</td>
          <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
          <td>Points:</td>
          <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
       </tr>
       <?php foreach ($category_outfits as $key => $offers):
          if (!is_array($offers['itemid'])) $offers['itemid'] = [$offers['itemid']];
          if (COUNT($offers['itemid']) > 2): ?>
             <tr class="special">
                <td colspan="2">
                   <p><strong>Error:</strong> Outfit offer don't support more than 2 outfits. <?php echo COUNT($offers['itemid']); ?> configured.
                      <br>[<?php echo implode(',', $offers['itemid']); ?>]</p>
                </td>
             </tr>
          <?php endif; ?>
          <tr class="special">
             <td><?php echo $offers['description']; ?></td>
             <?php if ($config['show_outfits']['shop']):?>
                <td><?php foreach($offers['itemid'] as $outfitId): ?>
                   <img src="<?php echo $config['show_outfits']['imageServer']; ?>?id=<?php echo $outfitId; ?>&addons=<?php echo $offers['count']; ?>&head=<?php echo rand(1, 132); ?>&body=<?php echo rand(1, 132); ?>&legs=<?php echo rand(1, 132); ?>&feet=<?php echo rand(1, 132); ?>" alt="img">
                <?php endforeach; ?></td>
             <?php endif; ?>
             <td><?php echo $offers['points']; ?></td>
             <?php if ($loggedin === true): ?>
             <td>
                <form action="" method="POST">
                   <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                   <input type="hidden" name="session" value="<?php echo time(); ?>">
                   <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
                </form>
             </td>
             <?php endif; ?>
          </tr>
       <?php endforeach; ?>
    </table>
    <?php endif; ?>
    <?php if (!empty($category_mounts)): ?>
    <!-- MOUNTS -->
    <table class="show" id="cat_mounts">
       <tr class="yellow">
          <td>Description:</td>
          <?php if ($config['show_outfits']['shop']) { ?><td>Image:</td><?php } ?>
          <td>Points:</td>
          <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
       </tr>
       <?php foreach ($category_mounts as $key => $offers): ?>
          <tr class="special">
             <td><?php echo $offers['description']; ?></td>
             <?php if ($config['shop']['showImage']):?>
                <td><img src="<?php echo $config['show_outfits']['imageServer']; ?>?id=<?php echo $outfitsIds[rand(0,count($outfitsIds)-1)]; ?>&addons=<?php echo rand(1, 3); ?>&head=<?php echo rand(1, 132); ?>&body=<?php echo rand(1, 132); ?>&legs=<?php echo rand(1, 132); ?>&feet=<?php echo rand(1, 132); ?>&mount=<?php echo $offers['itemid']; ?>&direction=2" alt="img"></td>
             <?php endif; ?>
             <td><?php echo $offers['points']; ?></td>
             <?php if ($loggedin === true): ?>
             <td>
                <form action="" method="POST">
                   <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                   <input type="hidden" name="session" value="<?php echo time(); ?>">
                   <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
                </form>
             </td>
             <?php endif; ?>
          </tr>
       <?php endforeach; ?>
    </table>
    <?php endif; ?>
    <?php if (!empty($category_misc)): ?>
    <!-- MISCELLANEOUS -->
    <table class="show" id="cat_misc">
       <tr class="yellow">
          <td>Description:</td>
          <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
          <td>Count/duration:</td>
          <td>Points:</td>
          <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
       </tr>
       <?php foreach ($category_misc as $key => $offers): ?>
          <tr class="special">
             <td><?php echo $offers['description']; ?></td>
             <?php if ($config['shop']['showImage']):?>
                <td><img src="http://<?php echo $config['shop']['imageServer']; ?>/<?php echo $offers['itemid']; ?>.<?php echo $config['shop']['imageType']; ?>" alt="img"></td>
             <?php endif;
             if ($offers['count'] === 0): ?>
                <td>Unlimited</td>
             <?php else: ?>
                <td><?php echo $offers['count']; ?>x</td>
             <?php endif; ?>
             <td><?php echo $offers['points']; ?></td>
             <?php if ($loggedin === true): ?>
             <td>
                <form action="" method="POST">
                   <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                   <input type="hidden" name="session" value="<?php echo time(); ?>">
                   <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['points']; ?>">
                </form>
             </td>
             <?php endif; ?>
          </tr>
       <?php endforeach; ?>
    </table>
    <?php endif; ?>

    <?php if ($shop['enableShopConfirmation']) { ?>
    <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
    <script>
        $(document).ready(function(){
            $(".needconfirmation").each(function(e){
                $(this).click(function(e){
                    var itemname = $(this).attr("data-item-name");
                    var itemcost = $(this).attr("data-item-cost");
                var r = confirm("Do you really want to purchase "+itemname+" for "+itemcost+" points?")
                if(r == false){
                   e.preventDefault();
                }         
                });
            });
        });
    </script>
    <?php }

       // Store current timestamp to prevent page-reload from processing old purchase
       $_SESSION['shop_session'] = time();

    } else echo '<h1>Buy Points system disabled.</h1><p>Sorry, this functionality is disabled.</p>';
    include 'layout/overall/footer.php'; ?>

    y todo el codigo de shop en el config.php, no se si necesito otro, de otro lugar para poder modificar eso bien.

    Código:
       $config['shop'] = array(
          'enabled' => true,
          'loginToView' => false, // Do user need to login to see the shop offers?
          'enableShopConfirmation' => true, // Verify that user wants to buy with popup
          'useDB' => false, // Fetch offers from database, or the below config array
          'showImage' => true,
          'imageServer' => 'items.znote.eu',
          'imageType' => 'gif',
       );

       //////////
       /// Let players sell, buy and bid on characters.
       /// Creates a deeper shop economy, encourages players to spend more money in shop for points.
       /// Pay to win/progress mechanic, but also lets people who can barely afford points to gain it
       /// by leveling characters to sell. It can also discourages illegal/risky third-party account
       /// services. Since players can buy officially & support the server, dodgy competitors have to sell for cheaper.
       /// Without admin interference this is organic to each individual community economy inflation.
       /////////
       $config['shop_auction'] = array(
          'characterAuction' => false, // Enable/disable this system
          // Account ID of the account that stores players in the auction.
          // Make sure storage account has a very secure password!
          'storage_account_id' => 500000, // Separate secure account ID, not your GM.
          'step' => 5, // Minimum amount someone can raise a bid by
          'step_duration' => 1 * 60 * 60, // When bidding over someone else, extend bid period by 1 hour.
          'lowestLevel' => 20, // Minimum level of sold character
          'lowestPrice' => 10, // Lowest donation points a char can be sold for.
          'biddingDuration' => 1 * 24 * 60 * 60, // = 1 day, 0 to disable bidding
          'deposit' => 10 // Seller has to add 10=10% deposit to auction which he gets back later.
       );

       /*
          type 1 = items
          type 2 = Premium days
          type 3 = Change character gender
          type 4 = Change character name
          type 5 = Buy outfit (put outfit id as itemid),
          (put addon id as count [0 = nothing, 1 = first addon, 2 = second addon, 3 = both addons])
          type 6 = Buy mount (put mount id as itemid)
          type 7 = buy house (hardcoded in the house system, type used for data log)
          type 8+ = custom coded stuff
       */
       $config['shop_offers'] = array(
          1 => array(
             'type' => 1,
             'itemid' => 2160, // item to get in-game
             'count' => 250, // Stack number (5x itemid)
             'description' => "Crystal coin", // Description shown on website
             'points' => 50, // How many points this offer costs
          ),
          2 => array(
             'type' => 1,
             'itemid' => 2392,
             'count' => 1,
             'description' => "Fire sword",
             'points' => 10,
          ),
          3 => array(
             'type' => 2,
             'itemid' => 12466, // Item to display on page
             'count' => 7, // Days of premium account
             'description' => "Premium membership",
             'points' => 25,
          ),
          4 => array(
             'type' => 3,
             'itemid' => 12666, // Item to display on page
             'count' => 3,
             'description' => "Change character gender",
             'points' => 10,
          ),
          5 => array(
             'type' => 3,
             'itemid' => 12666, // Item to display on page
             'count' => 0, // 0 = unlimited
             'description' => "Change character gender",
             'points' => 20,
          ),
          6 => array(
             'type' => 4,
             'itemid' => 12666, // Item to display on page
             'count' => 1,
             'description' => "Change character name",
             'points' => 20,
          ),
          7 => array(
             'type' => 5,
             'itemid' => [132, 140], // Outfit ID
             'count' => 3, // Addon 0 = none, 1 = first, 2 = second, 3 = both
             'description' => "Noble outfit with both addons",
             'points' => 20,
          ),
          8 => array(
             'type' => 6,
             'itemid' => 32, // Mount ID
             'count' => 1,
             'description' => "Gnarlhound mount",
             'points' => 20,
          ),
          9 => array(
             'type' => 6,
             'itemid' => 17,
             'count' => 1,
             'description' => "War horse",
             'points' => 20,
          ),
       );

    12default Re: Error en Pagina web Znote aac el Vie Mar 13, 2020 9:36 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    aqui tienes

    Código:

            <?php require_once 'engine/init.php';
            include 'layout/overall/header.php';

            if (isset($_GET['callback']) && $_GET['callback'] === 'processing') {
              echo '<script>alert("Seu pagamento está sendo processado pelo PagSeguro...");</script>';
            }

            // Import from config:
            $shop = $config['shop'];
            if ($shop['loginToView'] === true) protect_page();
            $loggedin = user_logged_in();

            $shop_list = $config['shop_offers'];

            if ($loggedin === true) {
              if (!empty($_POST['buy']) && $_SESSION['shop_session'] == $_POST['session']) {
                  $time = time();
                  $player_coins = (int)$user_znote_data['coins'];
                  $cid = (int)$user_data['id'];
                  // Sanitizing post, setting default buy value
                  $buy = false;
                  $post = (int)$_POST['buy'];
                 
                  foreach ($shop_list as $key => $value) {
                    if ($key === $post) {
                        $buy = $value;
                    }
                  }
                  if ($buy === false) die("Error: Shop offer ID mismatch.");
                 
                  // Verify that user can afford this offer.
                  if ($player_coins >= $buy['coins']) {
                    $data = mysql_select_single("SELECT `coins` FROM `znote_accounts` WHERE `account_id`='$cid';");
                    if (!$data) die("0: Account is not converted to work with Znote AAC");
                    $old_coins = $data['coins'];
                    if ((int)$old_coins != (int)$player_coins) die("1: Failed to equalize your coins.");
                    // Remove coins if they can afford
                    // Give coins to user
                    $expense_coins = $buy['coins'];
                    $new_coins = $old_coins - $expense_coins;
                    $update_account = mysql_update("UPDATE `znote_accounts` SET `coins`='$new_coins' WHERE `account_id`='$cid'");
                   
                    $data = mysql_select_single("SELECT `coins` FROM `znote_accounts` WHERE `account_id`='$cid';");
                    $verify = $data['coins'];
                    if ((int)$old_coins == (int)$verify) die("2: Failed to equalize your coins.". var_dump((int)$old_coins, (int)$verify, $new_coins, $expense_coins));
                   
                    // If this is an outfit offer, convert array into an integer.
                    if ($buy['type'] == 5) {
                        if (is_array($buy['itemid'])) {
                          if (COUNT($buy['itemid']) == 2) $buy['itemid'] = ($buy['itemid'][0] * 1000) + $buy['itemid'][1];
                          else $buy['itemid'] = $buy['itemid'][0];
                        }
                    }

                    // Do the magic (insert into db, or change sex etc)
                    // If type is 2 or 3
                    if ($buy['type'] == 2) {
                        // Add premium days to account
                        user_account_add_premdays($cid, $buy['count']);
                        echo '<font color="green" size="4">You now have '.$buy['count'].' additional days of premium membership.</font>';
                    } else if ($buy['type'] == 3) {
                        // Character Gender
                        mysql_insert("INSERT INTO `znote_shop_orders` (`account_id`, `type`, `itemid`, `count`, `time`) VALUES ('$cid', '". $buy['type'] ."', '". $buy['itemid'] ."', '". $buy['count'] ."', '$time')");
                        echo '<font color="green" size="4">You now have access to change character gender on your characters. Visit <a href="myaccount.php">My Account</a> to select character and change the gender.</font>';
                    } else if ($buy['type'] == 4) {
                        // Character Name
                        mysql_insert("INSERT INTO `znote_shop_orders` (`account_id`, `type`, `itemid`, `count`, `time`) VALUES ('$cid', '". $buy['type'] ."', '". $buy['itemid'] ."', '". $buy['count'] ."', '$time')");
                        echo '<font color="green" size="4">You now have access to change character name on your characters. Visit <a href="myaccount.php">My Account</a> to select character and change the name.</font>';
                    } else {
                        mysql_insert("INSERT INTO `znote_shop_orders` (`account_id`, `type`, `itemid`, `count`, `time`) VALUES ('$cid', '". $buy['type'] ."', '". $buy['itemid'] ."', '". $buy['count'] ."', '$time')");
                        echo '<font color="green" size="4">Your order is ready to be delivered. Write this command in-game to get it: [!shop].<br>Make sure you are in depot and can carry it before executing the command!</font>';
                    }
                   
                    // No matter which type, we will always log it.
                    mysql_insert("INSERT INTO `znote_shop_logs` (`account_id`, `player_id`, `type`, `itemid`, `count`, `coins`, `time`) VALUES ('$cid', '0', '". $buy['type'] ."', '". $buy['itemid'] ."', '". $buy['count'] ."', '". $buy['coins'] ."', '$time')");
                   
                  } else echo '<font color="red" size="4">You need more coins, this offer cost '.$buy['coins'].' coins.</font>';
                  //var_dump($buy);
                  //echo '<font color="red" size="4">'. $_POST['buy'] .'</font>';
              }
            }

            if ($shop['enabled']) {
            ?>

            <h1>Shop Offers</h1>
            <?php
            if ($loggedin === true) {
              if (!empty($_POST['buy']) && $_SESSION['shop_session'] == $_POST['session']) {
                  if ($user_znote_data['coins'] >= $buy['coins']) {
                    ?><td>You have <?php echo (int)($user_znote_data['coins'] - $buy['coins']); ?> coins. (<a href="buycoins.php">Buy coins</a>).</td><?php
                  } else {
                    ?><td>You have <?php echo $user_znote_data['coins']; ?> coins. (<a href="buycoins.php">Buy coins</a>).</td><?php
                  }
              } else {
                  ?><td>You have <?php echo $user_znote_data['coins']; ?> coins. (<a href="buycoins.php">Buy coins</a>).</td><?php
              }
              if ($config['shop_auction']['characterAuction']) {
                  ?>
                  <p>Interested in buying characters? View the <a href="auctionChar.php">character auction page!</a></p>
                  <?php
              }
            } else {
              ?><p>You need to be logged in to use the shop.</p><?php
            }

            $outfitsIds = array(136,137,138,139,140,141,142,147,148,149,150,155,156,157,158,252,269,270,279,288,324,336,366,431,433,464,466,471,513,514,542,128,129,130,131,132,133,134,143,144,145,146,151,152,153,154,251,268,273,278,289,325,335,367,430,432,463,465,472,512,516,541);
            $category_items = array();
            $category_premium = array();
            $category_outfits = array();
            $category_mounts = array();
            $category_misc = array();
            foreach ($shop_list as $key => $offer) {
             
              switch ($offer['type']) {
                  case 1:
                    $category_items[$key] = $offer;
                  break;
                  case 2:
                    $category_premium[$key] = $offer;
                  break;
                  case 3:
                    $category_misc[$key] = $offer;
                  break;
                  case 4:
                    $category_misc[$key] = $offer;
                  break;
                  case 5:
                    $category_outfits[$key] = $offer;
                  break;
                  case 6:
                    $category_mounts[$key] = $offer;
                  break;
                  default:
                    $category_misc[$key] = $offer;
                  break;
              }
            }

            // Render a bunch of tables (one for each category)
            ?>
            <div id="categoryNavigator">
              <a class="nav_link" href="#all">ALL</a>
              <?php if (!empty($category_items)): ?><a class="nav_link" href="#cat_itemids">ITEMS</a><?php endif; ?>
              <?php if (!empty($category_premium)): ?><a class="nav_link" href="#cat_premium">PREMIUM</a><?php endif; ?>
              <?php if (!empty($category_outfits)): ?><a class="nav_link" href="#cat_outfits">OUTFITS</a><?php endif; ?>
              <?php if (!empty($category_mounts)): ?><a class="nav_link" href="#cat_mounts">MOUNTS</a><?php endif; ?>
              <?php if (!empty($category_misc)): ?><a class="nav_link" href="#cat_misc">MISC</a><?php endif; ?>
            </div>
            <script type="text/javascript">
              function domReady () {
                  var links = document.getElementsByClassName("nav_link");
                  for (var i=0; i < links.length; i++) {
                    links[i].addEventListener('click', function(e){
                        e.preventDefault();
                        // Hide all tables
                        for (var x=0; x < links.length; x++) {
                          var hash = links[x].hash.substr(1);
                          if (hash != 'all') {
                              var table = document.getElementById(hash);
                              if (table.classList.contains("show")) {
                                table.classList.remove("show");
                                table.classList.add("hide");
                              }
                          }
                        }
                        // Display only the one we selected
                        var hash = this.hash.substr(1);
                        if (hash != 'all') {
                          var target = document.getElementById(hash);
                          if (target.classList.contains('hide')) {
                              target.classList.remove("hide");
                              target.classList.add("show");
                          }
                        } else { // We clicked to show all tables
                          // Show all tables
                          for (var x=0; x < links.length; x++) {
                              var hash = links[x].hash.substr(1);
                              if (hash != 'all') {
                                var table = document.getElementById(hash);
                                if (table.classList.contains("hide")) {
                                    table.classList.remove("hide");
                                    table.classList.add("show");
                                }
                              }
                          }
                        }
                    });
                  }
              }
              // Mozilla, Opera, Webkit
              if ( document.addEventListener ) {
                  document.addEventListener( "DOMContentLoaded", function(){
                  document.removeEventListener( "DOMContentLoaded", arguments.callee, false);
                  domReady();
                }, false );
              // If IE event model is used
              } else if ( document.attachEvent ) {
                  // ensure firing before onload
                  document.attachEvent("onreadystatechange", function(){
                  if ( document.readyState === "complete" ) {
                    document.detachEvent( "onreadystatechange", arguments.callee );
                    domReady();
                  }
                  });
              }
            </script>

            <?php if (!empty($category_items)): ?>
              <!-- ITEMIDS -->
              <table class="show" id="cat_itemids">
                  <tr class="yellow">
                    <td>Item:</td>
                    <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
                    <td>Count:</td>
                    <td>coins:</td>
                    <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
                  </tr>
                  <?php foreach ($category_items as $key => $offers): ?>
                    <tr class="special">
                        <td><?php echo $offers['description']; ?></td>
                        <?php if ($config['shop']['showImage']):?>
                          <td><img src="http://<?php echo $config['shop']['imageServer']; ?>/<?php echo $offers['itemid']; ?>.<?php echo $config['shop']['imageType']; ?>" alt="img"></td>
                        <?php endif; ?>
                        <td><?php echo $offers['count']; ?>x</td>
                        <td><?php echo $offers['coins']; ?></td>
                        <?php if ($loggedin === true): ?>
                        <td>
                          <form action="" method="POST">
                              <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                              <input type="hidden" name="session" value="<?php echo time(); ?>">
                              <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['coins']; ?>">
                          </form>
                        </td>
                        <?php endif; ?>
                    </tr>
                  <?php endforeach; ?>
              </table>
            <?php endif; ?>
            <?php if (!empty($category_premium)): ?>
            <!-- PREMIUM DURATION -->
            <table class="show" id="cat_premium">
              <tr class="yellow">
                  <td>Description:</td>
                  <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
                  <td>Duration:</td>
                  <td>coins:</td>
                  <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
              </tr>
              <?php foreach ($category_premium as $key => $offers): ?>
                  <tr class="special">
                    <td><?php echo $offers['description']; ?></td>
                    <?php if ($config['shop']['showImage']):?>
                        <td><img src="http://<?php echo $config['shop']['imageServer']; ?>/<?php echo $offers['itemid']; ?>.<?php echo $config['shop']['imageType']; ?>" alt="img"></td>
                    <?php endif; ?>
                    <td><?php echo $offers['count']; ?> Days</td>
                    <td><?php echo $offers['coins']; ?></td>
                    <?php if ($loggedin === true): ?>
                    <td>
                        <form action="" method="POST">
                          <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                          <input type="hidden" name="session" value="<?php echo time(); ?>">
                          <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['coins']; ?>">
                        </form>
                    </td>
                    <?php endif; ?>
                  </tr>
              <?php endforeach; ?>
            </table>
            <?php endif; ?>
            <?php if (!empty($category_outfits)): ?>
            <!-- OUTFITS -->
            <table class="show" id="cat_outfits">
              <tr class="yellow">
                  <td>Description:</td>
                  <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
                  <td>coins:</td>
                  <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
              </tr>
              <?php foreach ($category_outfits as $key => $offers):
                  if (!is_array($offers['itemid'])) $offers['itemid'] = [$offers['itemid']];
                  if (COUNT($offers['itemid']) > 2): ?>
                    <tr class="special">
                        <td colspan="2">
                          <p><strong>Error:</strong> Outfit offer don't support more than 2 outfits. <?php echo COUNT($offers['itemid']); ?> configured.
                              <br>[<?php echo implode(',', $offers['itemid']); ?>]</p>
                        </td>
                    </tr>
                  <?php endif; ?>
                  <tr class="special">
                    <td><?php echo $offers['description']; ?></td>
                    <?php if ($config['show_outfits']['shop']):?>
                        <td><?php foreach($offers['itemid'] as $outfitId): ?>
                          <img src="<?php echo $config['show_outfits']['imageServer']; ?>?id=<?php echo $outfitId; ?>&addons=<?php echo $offers['count']; ?>&head=<?php echo rand(1, 132); ?>&body=<?php echo rand(1, 132); ?>&legs=<?php echo rand(1, 132); ?>&feet=<?php echo rand(1, 132); ?>" alt="img">
                        <?php endforeach; ?></td>
                    <?php endif; ?>
                    <td><?php echo $offers['coins']; ?></td>
                    <?php if ($loggedin === true): ?>
                    <td>
                        <form action="" method="POST">
                          <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                          <input type="hidden" name="session" value="<?php echo time(); ?>">
                          <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['coins']; ?>">
                        </form>
                    </td>
                    <?php endif; ?>
                  </tr>
              <?php endforeach; ?>
            </table>
            <?php endif; ?>
            <?php if (!empty($category_mounts)): ?>
            <!-- MOUNTS -->
            <table class="show" id="cat_mounts">
              <tr class="yellow">
                  <td>Description:</td>
                  <?php if ($config['show_outfits']['shop']) { ?><td>Image:</td><?php } ?>
                  <td>coins:</td>
                  <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
              </tr>
              <?php foreach ($category_mounts as $key => $offers): ?>
                  <tr class="special">
                    <td><?php echo $offers['description']; ?></td>
                    <?php if ($config['shop']['showImage']):?>
                        <td><img src="<?php echo $config['show_outfits']['imageServer']; ?>?id=<?php echo $outfitsIds[rand(0,count($outfitsIds)-1)]; ?>&addons=<?php echo rand(1, 3); ?>&head=<?php echo rand(1, 132); ?>&body=<?php echo rand(1, 132); ?>&legs=<?php echo rand(1, 132); ?>&feet=<?php echo rand(1, 132); ?>&mount=<?php echo $offers['itemid']; ?>&direction=2" alt="img"></td>
                    <?php endif; ?>
                    <td><?php echo $offers['coins']; ?></td>
                    <?php if ($loggedin === true): ?>
                    <td>
                        <form action="" method="POST">
                          <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                          <input type="hidden" name="session" value="<?php echo time(); ?>">
                          <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['coins']; ?>">
                        </form>
                    </td>
                    <?php endif; ?>
                  </tr>
              <?php endforeach; ?>
            </table>
            <?php endif; ?>
            <?php if (!empty($category_misc)): ?>
            <!-- MISCELLANEOUS -->
            <table class="show" id="cat_misc">
              <tr class="yellow">
                  <td>Description:</td>
                  <?php if ($config['shop']['showImage']) { ?><td>Image:</td><?php } ?>
                  <td>Count/duration:</td>
                  <td>coins:</td>
                  <?php if ($loggedin === true): ?><td>Action:</td><?php endif; ?>
              </tr>
              <?php foreach ($category_misc as $key => $offers): ?>
                  <tr class="special">
                    <td><?php echo $offers['description']; ?></td>
                    <?php if ($config['shop']['showImage']):?>
                        <td><img src="http://<?php echo $config['shop']['imageServer']; ?>/<?php echo $offers['itemid']; ?>.<?php echo $config['shop']['imageType']; ?>" alt="img"></td>
                    <?php endif;
                    if ($offers['count'] === 0): ?>
                        <td>Unlimited</td>
                    <?php else: ?>
                        <td><?php echo $offers['count']; ?>x</td>
                    <?php endif; ?>
                    <td><?php echo $offers['coins']; ?></td>
                    <?php if ($loggedin === true): ?>
                    <td>
                        <form action="" method="POST">
                          <input type="hidden" name="buy" value="<?php echo (int)$key; ?>">
                          <input type="hidden" name="session" value="<?php echo time(); ?>">
                          <input type="submit" value="  PURCHASE  "  class="needconfirmation" data-item-name="<?php echo $offers['description']; ?>" data-item-cost="<?php echo $offers['coins']; ?>">
                        </form>
                    </td>
                    <?php endif; ?>
                  </tr>
              <?php endforeach; ?>
            </table>
            <?php endif; ?>

            <?php if ($shop['enableShopConfirmation']) { ?>
            <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
            <script>
                $(document).ready(function(){
                    $(".needconfirmation").each(function(e){
                        $(this).click(function(e){
                            var itemname = $(this).attr("data-item-name");
                            var itemcost = $(this).attr("data-item-cost");
                        var r = confirm("Do you really want to purchase "+itemname+" for "+itemcost+" coins?")
                        if(r == false){
                          e.preventDefault();
                        }       
                        });
                    });
                });
            </script>
            <?php }

              // Store current timestamp to prevent page-reload from processing old purchase
              $_SESSION['shop_session'] = time();

            } else echo '<h1>Buy coins system disabled.</h1><p>Sorry, this functionality is disabled.</p>';
            include 'layout/overall/footer.php'; ?>



    Error en Pagina web Znote aac YNU5B25
    https://www.tibiaface.com

    Contenido patrocinado


    Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje (Página 1 de 1.)

    Temas similares

    -

    » El pianista [DVDRip]

    Permisos de este foro:
    No puedes responder a temas en este foro.

     

    BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).