chivalry engine profile error

Place for questions and answers for all newcomers and new coders. This is a free for all forum, no question is too stupid and to noob.

chivalry engine profile error

Postby Rodeobull » Tue Jan 16, 2018 3:22 pm

hi

i want to use the chivalry engine and i have an error on the profile page
https://github.com/MasterGeneral156/chivalry-engine
i can't view any profile because it keeps saying
The user you are trying to view does not exist, or has an account issue.

Code: Select all
<?php
/*
   File:      profile.php
   Created:    4/5/2016 at 12:23AM Eastern Time
   Info:       Allows players to view a player's profile page. This
            displays information about their level, location,
            gender, cash, estate, etc.
   Author:      TheMasterGeneral
   Website:    https://github.com/MasterGeneral156/chivalry-engine
*/
require("globals.php");
$code = request_csrf_code('inbox_send');
$code2 = request_csrf_code('cash_send');
$_GET['user'] = (isset($_GET['user']) && is_numeric($_GET['user'])) ? abs($_GET['user']) : '';
if (!$_GET['user']) {
    alert("danger", "Uh Oh!", "Please specify a user you wish to view.", true, 'index.php');
} else {
    $q =
        $db->query(
            "SELECT `u`.`userid`, `user_level`, `laston`, `last_login`,
                    `registertime`, `vip_days`, `username`, `gender`,
               `primary_currency`, `secondary_currency`, `level`, `class`,
               `display_pic`, `hp`, `maxhp`, `guild`,
                    `fedjail`, `bank`, `lastip`, `lastip`,
                    `loginip`, `registerip`, `staff_notes`, `town_name`,
                    `house_name`, `guild_name`, `fed_out`, `fed_reason`,
               `infirmary_reason`, `infirmary_out`, `dungeon_reason`, `dungeon_out`,
               `browser`, `os`, `screensize`
                    FROM `users` `u`
                    INNER JOIN `town` AS `t`
                    ON `u`.`location` = `t`.`town_id`
               LEFT JOIN `infirmary` AS `i`
               ON `u`.`userid` = `i`.`infirmary_user`
               LEFT JOIN `dungeon` AS `d`
               ON `u`.`userid` = `d`.`dungeon_user`
                    INNER JOIN `estates` AS `e`
                    ON `u`.`maxwill` = e.`house_will`
                    LEFT JOIN `guild` AS `g`
                    ON `g`.`guild_id` = `u`.`guild`
                    LEFT JOIN `fedjail` AS `f`
                    ON `f`.`fed_userid` = `u`.`userid`
               LEFT JOIN `userdata` AS `ud`
                    ON `ud`.`userid` = `u`.`userid`
                    WHERE `u`.`userid` = {$_GET['user']}");
    if ($db->num_rows($q) == 0) {
        $db->free_result($q);
        alert("danger", "Uh Oh!", "The user you are trying to view does not exist, or has an account issue.", true, 'index.php');
    } else {
        $r = $db->fetch_row($q);
        $db->free_result($q);
        $lon = ($r['laston'] > 0) ? date('F j, Y g:i:s a', $r['laston']) : "Never";
        $ula = ($r['laston'] == 0) ? 'Never' : DateTime_Parse($r['laston']);
        $ull = ($r['last_login'] == 0) ? 'Never' : DateTime_Parse($r['last_login']);
        $sup = date('F j, Y g:i:s a', $r['registertime']);
        $displaypic = ($r['display_pic']) ? "<img src='{$r['display_pic']}' class='img-thumbnail img-responsive' width='250' height='250'>" : '';
        $user_name = ($r['vip_days']) ? "<span class='text-danger'>{$r['username']} <i class='fa fa-shield'
            data-toggle='tooltip' title='{$r['vip_days']} VIP Days remaining.'></i></span>" : $r['username'];
        $ref_q =
            $db->query(
                "SELECT COUNT(`referalid`)
                         FROM `referals`
                         WHERE `referal_userid` = {$r['userid']}");
        $ref = $db->fetch_single($ref_q);
        $db->free_result($ref_q);
        $friend_q =
            $db->query(
                "SELECT COUNT(`friend_id`)
                         FROM `friends`
                         WHERE `friended` = {$r['userid']}");
        $friend = $db->fetch_single($friend_q);
        $db->free_result($friend_q);
        $enemy_q =
            $db->query(
                "SELECT COUNT(`enemy_id`)
                         FROM `enemy`
                         WHERE `enemy_user` = {$r['userid']}");
        $enemy = $db->fetch_single($enemy_q);
        $db->free_result($enemy_q);
        $CurrentTime = time();
        $r['daysold'] = DateTime_Parse($r['registertime'], false, true);
        $rhpperc = round($r['hp'] / $r['maxhp'] * 100);
        echo "<h3>{$user_name}'s Profile</h3>";
        ?>
      <div class="row">
         <div class="col-lg-2">
            <?php
        echo "{$displaypic}<br />
                        {$r['user_level']}<br />
                  Location {$r['town_name']}<br />
                        Level: {$r['level']}<br />";
        echo ($r['guild']) ? "Guild: <a href='guilds.php?action=view&id={$r['guild']}'>{$r['guild_name']}</a><br />" : '';
        echo "Health: {$r['hp']}/{$r['maxhp']}<br />";
        ?>
         </div>
         <div class="col-lg-10">
            <ul class="nav nav-tabs nav-justified">
              <li class="active nav-item"><a class='nav-link' data-toggle="tab" href="#info"><?php echo "Physical Info"; ?></a></li>
              <li class='nav-item'><a class='nav-link' data-toggle="tab" href="#actions"><?php echo "Actions"; ?></a></li>
              <li class='nav-item'><a class='nav-link' data-toggle="tab" href="#financial"><?php echo "Financial Info"; ?></a></li>
              <?php
        if (!in_array($ir['user_level'], array('Member', 'NPC'))) {
            echo "<li class='nav-item'><a class='nav-link' data-toggle='tab' href='#staff'>Staff</a></li>";
        }
        ?>
            </ul>
            <br />
            <div class="tab-content">
              <div id="info" class="tab-pane active">
               <p>
                  <?php
        echo
        "
                  <table class='table table-bordered'>
                     <tr>
                        <th width='25%'>Sex</th>
                        <td>{$r['gender']}</td>
                     </tr>
                     <tr>
                        <th>Class</th>
                        <td>{$r['class']}</td>
                     </tr>
                     <tr>
                        <th>Registered</th>
                        <td>{$sup}</td>
                     </tr>
                     <tr>
                        <th>Last Active</th>
                        <td>{$ula}</td>
                     </tr>
                     <tr>
                        <th>Last Login</th>
                        <td>{$ull}</td>
                     </tr>
                     <tr>
                        <th>Age</th>
                        <td>{$r['daysold']}</td>
                     </tr>";
        if (user_infirmary($r['userid'])) {
            echo "
                     <tr>
                        <th>Infirmary</th>
                        <td>In the infirmary for " . TimeUntil_Parse($r['infirmary_out']) . ".<br />
                        {$r['infirmary_reason']}
                        </td>
                     </tr>";
        }
        if (user_dungeon($r['userid'])) {
            echo "
                     <tr>
                        <th>Dungeon</th>
                        <td>In the dungeon for " . TimeUntil_Parse($r['dungeon_out']) . ".<br />
                        {$r['dungeon_reason']}
                        </td>
                     </tr>";
        }
        if ($r['fedjail']) {
            echo "
                     <tr>
                        <th>Federal Dungeon</th>
                        <td>In the federal dungeon for " . TimeUntil_Parse($r['fed_out']) . ".<br />
                        {$r['fed_reason']}
                        </td>
                     </tr>";
        }
        echo "</table>
               </p>
              </div>
              <div id='actions' class='tab-pane'>
                    <a href='inbox.php?action=compose&user={$r['userid']}' class='btn btn-primary'>Message {$r['username']}</a>
                    <br />
                <br />
                <a href='sendcash.php?user={$r['userid']}' class='btn btn-primary'>Send {$r['username']} Cash</a>
                <br />
                <br />
               <a href='attack.php?user={$r['userid']}' class='btn btn-danger'>Attack {$r['username']}</a>
               <br />
               <br />
               <a href='hirespy.php?user={$r['userid']}' class='btn btn-primary'>Spy On {$r['username']}</a>
               <br />
               <br />
               <a href='poke.php?user={$r['userid']}' class='btn btn-primary'>Poke {$r['username']}</a>
               <br />
               <br />
               <a href='contacts.php?action=add&user={$r['userid']}' class='btn btn-primary'>Add {$r['username']} to Contact List</a>
              ";
        ?>
              </div>
              <div id="financial" class="tab-pane">
               <?php
        echo
            "
                  <table class='table table-bordered'>
                     <tr>
                        <th width='25%'>Primary Currency</th>
                        <td> " . number_format($r['primary_currency']) . "</td>
                     </tr>
                     <tr>
                        <th>Secondary Currency</th>
                        <td>" . number_format($r['secondary_currency']) . "</td>
                     </tr>
                     <tr>
                        <th>Estate</th>
                        <td>{$r['house_name']}</td>
                     </tr>
                     <tr>
                        <th>Referrals</th>
                        <td>" . number_format($ref) . "</td>
                     </tr>
                     <tr>
                        <th>Friends</th>
                        <td>" . number_format($friend) . "</td>
                     </tr>
                     <tr>
                        <th>Enemies</th>
                        <td>" . number_format($enemy) . "</td>
                     </tr>
                  </table>";
        ?>
              </div>
              <?php
        echo '<div id="staff" class="tab-pane">';
        if (!in_array($ir['user_level'], array('Member', 'NPC'))) {
            $fg = json_decode(get_fg_cache("cache/{$r['lastip']}.json", "{$r['lastip']}", 65655), true);
            $log = $db->fetch_single($db->query("SELECT `log_text` FROM `logs` WHERE `log_user` = {$r['userid']} ORDER BY `log_id` DESC"));
            echo "<a href='staff/staff_punish.php?action=fedjail&user={$r['userid']}' class='btn btn-primary'>Fedjail</a>
                <a href='staff/staff_punish.php?action=forumban&user={$r['userid']}' class='btn btn-primary'>Forum Ban</a>";
            echo "<table class='table table-bordered'>
                     <tr>
                        <th width='33%'>Data</th>
                        <th>Output</th>
                     </tr>
                     <tr>
                        <td>Location</td>
                        <td>{$fg['city']}, {$fg['state']}, {$fg['country']}, ({$fg['isocode']})</td>
                     </tr>
                     <tr>
                        <td>Risk Level</td>
                        <td>" . parse_risk($fg['risk_level']) . "</td>
                     </tr>
                     <tr>
                        <td>Last Hit</td>
                        <td>{$r['lastip']}</td>
                     </tr>
                     <tr>
                        <td>Last Login</td>
                        <td>{$r['loginip']}</td>
                     </tr>
                     <tr>
                        <td>Sign Up</td>
                        <td>{$r['registerip']}</td>
                     </tr>
                     <tr>
                        <td>
                           Last Action
                        </td>
                        <td>
                           {$log}
                        </td>
                     </tr>
                     <tr>
                        <td>
                           Browser/OS
                        </td>
                        <td>
                           {$r['browser']}/{$r['os']}
                        </td>
                     </tr>
               </table>
               <form action='staff/staff_punish.php?action=staffnotes' method='post'>
                  Staff Notes
                  <br />
                  <textarea rows='7' class='form-control' name='staffnotes'>"
                . htmlentities($r['staff_notes'], ENT_QUOTES, 'ISO-8859-1')
                . "</textarea>
                  <br />
                  <input type='hidden' name='ID' value='{$_GET['user']}' />
                  <input type='submit' class='btn btn-primary' value='Update Notes' />
               </form>";
        }
        ?>
             
              </div>
            </div>
         </div>
      </div>
      <?php
    }
}
function parse_risk($risk_level)
{
    switch ($risk_level) {
        case 2:
            return "Spam";
        case 3:
            return "Open Public Proxy";
        case 4:
            return "Tor Node";
        case 5:
            return "Honeypot / Botnet / DDOS Attack";
        default:
            return "No Risk";
    }
}
$h->endpage();
Rodeobull
 
Posts: 10
Joined: Thu Jan 09, 2014 2:49 pm
Has thanked: 0 time
Been thanked: 0 time

Re: chivalry engine profile error

Postby Jackolantern » Sun Jan 21, 2018 5:14 pm

Are you sure that the user it is trying to query for does exist in the database? It appears that this is the error message that shows when it can't get the result from the DB.
The indelible lord of tl;dr
User avatar
Jackolantern
 
Posts: 10848
Joined: Wed Jul 01, 2009 6:00 pm
Location: Houston, TX
Has thanked: 22 times
Been thanked: 88 times
Blog: View Blog (1)

Re: chivalry engine profile error

Postby hallsofvallhalla » Mon Jan 22, 2018 12:41 pm

There are a lot of joins in that query as well. Make sure the user aslo has the entries in the required tables.
User avatar
hallsofvallhalla
Site Admin
 
Posts: 11886
Images: 13
Joined: Wed Apr 22, 2009 6:29 pm
Location: mobile, al
Has thanked: 11 times
Been thanked: 147 times
Blog: View Blog (3)

Re: chivalry engine profile error

Postby Jackolantern » Wed Jan 24, 2018 8:42 pm

Good call. Maybe try to extract the query out into plain SQL and try running it directly inside MySQL. See if it returns data.
The indelible lord of tl;dr
User avatar
Jackolantern
 
Posts: 10848
Joined: Wed Jul 01, 2009 6:00 pm
Location: Houston, TX
Has thanked: 22 times
Been thanked: 88 times
Blog: View Blog (1)


Return to Beginner Help and Support

Who is online

Users browsing this forum: No registered users and 1 guest

cron

x