Autor Zpráva
ipetr
Profil
Upravuji jeden doplněk k phorum.org. Jsou to dva soubory, allusers.tpl a mod_allusers.php
v souboru mod_allusers.php jsem přidal select $query1 kde vyčítám podle podmínky icq číslo které pak chci zobrazit (doplnil jsem do souboru allusers.tpl). Select je dobře, jen se mi to pole icq nedaří nějak načíst.

Poradíte kde mám chybu?

SOUBOR mod_allusers.php

<?php

//////////////////////////////////
// //
// Blee. //
// Roughly thrown together //
// by Ryan Mosby of //
// twilightrealm.com //
// //
// Continued by Yoschi //
// rewritten as a module //
// by Krang of Krang Central //
// http://www.krang.org //
// //
//////////////////////////////////

include_once("./common.php");
include_once("./include/format_functions.php");
define('phorum_page','allusers');

$sortby=array("user_id","username","posts","email","date_last_active") ;
$ordby=array("ASC","DESC");

$sort=$_GET["sort"];
$ord=$_GET["ord"];
$page=$_GET["page"];

if(!$sort || !settype($sort,"integer") || $sort<0 || $sort>=count($sortby)) // check given parameters
$sort=0;
if(!$ord || !settype($ord,"integer") || $ord<0 || $ord>count($ordby))
$ord=0;
if(!$page || !settype($page,"integer") || $page<0)
$page=1;


$PHORUM["DATA"]["USERS"] = array();



$query = "

SELECT a.user_id,a.username,a.user_data,a.email,a.hide_email,b.type,b.data as 'realname',a.posts,a.date_last_active
from phorum_users a left join phorum_user_custom_fields b on a.user_id=b.user_id
where b.type=0 OR b.type IS NULL

ORDER BY $sortby[$sort] $ordby[$ord] LIMIT ".(($page-1)*100).",100";

$result = mysql_query($query);

$users=array();

while ($newArray = mysql_fetch_array($result)) {
$users[$newArray['user_id']] = $newArray;
if( !empty($PHORUM["user"]["admin"]))
{
$users[$newArray['user_id']][email] = phorum_html_encode(strtolower($newArray['email']));
$users[$newArray['user_id']][hide_email] = 0;
}
else
{
$users[$newArray['user_id']][email] = ($newArray['hide_email']==1)?$PHORUM["DATA"]["LANG"]["Hidden"]:phorum_ html_encode(strtolower($newArray['email']));
}
$data = unserialize($newArray[user_data]);
$users[$newArray['user_id']][real_name] = $data[real_name];
$users[$newArray['user_id']][home_page] = $data[home_page];
$users[$newArray['user_id']][mod_avatar] = $data[mod_avatar][default_avatar];
$users[$newArray['user_id']][mod_avatar_url] = phorum_get_url(PHORUM_FILE_URL, "file=" . $data[mod_avatar][default_avatar]);
$users[$newArray['user_id']][date_last_active] = phorum_date($PHORUM["short_date"], $newArray['date_last_active']);
$users[$newArray['user_id']][profile_url] = phorum_get_url(PHORUM_PROFILE_URL, $newArray['user_id']);
$users[$newArray['user_id']][mod_userrank] = $PHORUM["mod_userrank"]["custom_user_ranks"][$profile["user_id"]];
$users[$newArray['user_id']][pm_url] = phorum_get_url(PHORUM_PM_URL, "page=send", "to_id=" .urlencode($newArray['user_id']));
}


$query1 = "

SELECT a.user_id,b.data as 'icq'
from phorum_users a left join phorum_user_custom_fields b on a.user_id=b.user_id
where b.type=12 OR b.type IS NULL

ORDER BY $sortby[$sort] $ordby[$ord] LIMIT ".(($page-1)*100).",100";

$result = mysql_query($query1);
while ($newArray = mysql_fetch_array($result)) {
$data = unserialize($newArray[user_data]);
$users[$newArray['user_id']][icq] = $data[icq];
}


$PHORUM["DATA"]["USERS"] = $users;

$query = mysql_query("SELECT COUNT(*) FROM ".$PHORUM['user_table']);
$total = mysql_result($query,0);
mysql_free_result($query);

phorum_build_common_urls();

if(!$PHORUM["threaded_read"] && $total > 100){
$pages=ceil($total/30);

if($pages<=11){
$page_start=1;
} elseif($pages-$page<5) {
$page_start=$pages-10;
} elseif($pages>11 && $page>6){
$page_start=$page-5;
} else {
$page_start=1;
}

for($x=0;$x<11 && $x<$pages;$x++){
$pageno=$x+$page_start;
$PHORUM["DATA"]["PAGES"][] = array(
"pageno"=>$pageno,
"url"=>$GLOBALS["PHORUM"]["DATA"]["URL"]["ALLUSERS"]."&page=$pageno&or d=$ord&sort=$sort");
}

$PHORUM["DATA"]["CURRENTPAGE"]=$page;
$PHORUM["DATA"]["TOTALPAGES"]=$pages;

if($page_start>1){
$PHORUM["DATA"]["URL"]["FIRSTPAGE"]=$GLOBALS["PHORUM"]["DATA"]["URL"][ "ALLUSERS"]."&page=1&ord=$ord&sort=$sort";
}

if($pageno<$pages){
$PHORUM["DATA"]["URL"]["LASTPAGE"]=$GLOBALS["PHORUM"]["DATA"]["URL"][" ALLUSERS"]."&page=$pages&ord=$ord&sort=$sort";
}

if($pages>$page){
$nextpage=$page+1;
$PHORUM["DATA"]["URL"]["NEXTPAGE"]=$GLOBALS["PHORUM"]["DATA"]["URL"][" ALLUSERS"]."&page=$nextpage&ord=$ord&sort=$sort";
}
if($page>1){
$prevpage=$page-1;
$PHORUM["DATA"]["URL"]["PREVPAGE"]=$GLOBALS["PHORUM"]["DATA"]["URL"][" ALLUSERS"]."&page=$prevpage&ord=$ord&sort=$sort";
}
}

// include the correct template

include phorum_get_template("header");
phorum_hook("after_header");

include phorum_get_template("allusers");

phorum_hook("before_footer");
include phorum_get_template("footer");

?>
ipetr
Profil
SOUBOR allusers.tpl

<div align="center">

{IF LOGGEDIN false}
<div class="PhorumNavBlock PhorumNarrowBlock" style="text-align: left;">
<span class="PhorumNavHeading PhorumHeadingLeft">{LANG->Goto}:</span>&nbsp;<a class="PhorumNavLink" href="{URL->INDEX}">{LANG->ForumList}</a>&bull;<a class="PhorumNavLink" href="{URL->TOP}">{LANG->MessageList}</a>&bull;<a class="PhorumNavLink" href="{URL->SEARCH}">{LANG->Search}</a>{IF LOGGEDIN true}&bull;<a class="PhorumNavLink" href="{URL->REGISTERPROFILE}">{LANG->MyProfile}</a>&bull;<a class="PhorumNavLink" href="{URL->LOGINOUT}">{LANG->LogOut}</a>{/IF}{IF LOGGEDIN false}&bull; <a class="PhorumNavLink" href="{URL->LOGINOUT}">{LANG->LogIn}</a>{/IF}
</div>
<div class="PhorumStdBlock PhorumNarrowBlock">
<div class="PhorumFloatingText">{LANG->PleaseLoginRead}</div>
</div>
{/if}

{IF LOGGEDIN true}
<div class="PhorumNavBlock" style="text-align: left;">
<span class="PhorumNavHeading PhorumHeadingLeft">{LANG->Goto}:</span>&nbsp;<a class="PhorumNavLink" href="{URL->INDEX}">{LANG->ForumList}</a>&bull;<a class="PhorumNavLink" href="{URL->SEARCH}">{LANG->Search}</a>{IF LOGGEDIN true}&bull;<a class="PhorumNavLink" href="{URL->REGISTERPROFILE}">{LANG->MyProfile}</a>&bull;<a class="PhorumNavLink" href="{URL->LOGINOUT}">{LANG->LogOut}</a>{/IF}{IF LOGGEDIN false}&bull; <a class="PhorumNavLink" href="{URL->LOGINOUT}">{LANG->LogIn}</a>{/IF}
</div>


<table cellpadding="1" cellspacing="0" border="0" class="PhorumStdTable">
<tbody>
<tr><th colspan=9 align=left><b>{LANG->mod_allusers->ActiveUsers}</b></th></tr>
<tr>
<th align="left" valign="top" class="PhorumLargeFont" width="40"><a href="{URL->ALLUSERS}<?php $i=0; echo "&page=$page&ord=".(($sort==$i && $ord==0)?1:0)."&sort=".($i++); ?>">Id.</a></th>
<th align="left" valign="top" class="PhorumLargeFont" width="125">{LANG->mod_avatar->Avatar}</th>
<th align="left" valign="top" class="PhorumLargeFont"><a href="{URL->ALLUSERS}<?php echo "&page=$page&ord=".(($sort==$i && $ord==0)?1:0)."&sort=".($i++); ?>">{LANG->Username}</a></th>
<th align="left" valign="top" class="PhorumLargeFont"><a href="{URL->ALLUSERS}<?php echo "&page=$page&ord=".(($sort==$i && $ord==0)?1:0)."&sort=".($i++); ?>">Icq</a></th>
<th align="left" valign="top" class="PhorumLargeFont" width="60"><a href="{URL->ALLUSERS}<?php echo "&page=$page&ord=".(($sort==$i && $ord==0)?1:0)."&sort=".($i++); ?>">{LANG->Posts}</a></th>
{IF ENABLE_PM}<th align="center" valign="top" class="PhorumLargeFont" width="60">PM</th>{/IF}
<th align="center" valign="top" class="PhorumLargeFont" width="40"><a href="{URL->ALLUSERS}<?php echo "&page=$page&ord=".(($sort==$i && $ord==0)?1:0)."&sort=".($i++); ?>">{LANG->Email}</a></th>
<?php if( !empty($PHORUM["user"]["admin"])) { ?>
<th align="left" valign="top" class="PhorumLargeFont" width="120"><a href="{URL->ALLUSERS}<?php echo "&page=$page&ord=".(($sort==$i && $ord==0)?1:0)."&sort=".($i++); ?>">{LANG->DateActive}</a></th>
<?php } ?>
</tr>
{LOOP USERS}
<tr>
<td class="PhorumTableRow" align="left" valign="center" width="40">{USERS->user_id}</td>
{IF USERS->mod_avatar}
<td class="PhorumTableRow" align="left" valign="center" width="125"><img src="{USERS->mod_avatar_url}" alt="{LANG->mod_avatar->Avatar}" align="left"></td>
{ELSE}
<td class="PhorumTableRow" align="left" valign="center" width="125">&nbsp;</td>
{/IF}
<td class="PhorumTableRow" align="left" valign="center"><a href="{USERS->profile_url}">{USERS->realname}</a></td>
<td class="PhorumTableRow" align="left" valign="center"><a href="{USERS->profile_url}">{USERS->icq}</a></td>
<td class="PhorumTableRow" align="left" valign="center" width="40"><b>{USERS->posts}</b></td>
{IF ENABLE_PM}<td class="PhorumTableRow" align="center" valign="center" width="40"><a href="{USERS->pm_url}"><img src="mods/allusers/images/icon_pm.gif" border="0" alt="" style="vertical-align: middle;" />&nbsp;</a></td>{/IF}
{IF USERS->hide_email}
<td class="PhorumTableRow" align="center" valign="center" width="60"><img src="mods/allusers/images/icon_email_hidden.gif" border="0" alt="" style="vertical-align: middle;" />&nbsp;</td>
{ELSE}
<td class="PhorumTableRow" align="center" valign="center" width="60"><a href="mailto:{USERS->email}"><img src="mods/allusers/images/icon_email.gif" border="0" alt="" style="vertical-align: middle;" />&nbsp;</a></td>
{/IF}
<?php if( !empty($PHORUM["user"]["admin"])) { ?>
<td class="PhorumTableRow" align="left" valign="center" width="120">{USERS->date_last_active}</td>
<?php } ?>
</tr>

{/LOOP USERS}
</tbody>
</table>

{if PAGES}
<div class="PhorumNavBlock" style="text-align: left;">
<div style="float: right;">
<span class="PhorumNavHeading">{LANG->Pages}:</span>&nbsp;
{if URL->PREVPAGE}<a class="PhorumNavLink" href="{URL->PREVPAGE}">{LANG->PrevPage}</a>{/if}
{if URL->FIRSTPAGE}<a class="PhorumNavLink" href="{URL->FIRSTPAGE}">{LANG->FirstPage}...</a>{/if}
{loop PAGES}<a class="PhorumNavLink" href="{PAGES->url}">{PAGES->pageno}</a>{/loop PAGES}
{if URL->LASTPAGE}<a class="PhorumNavLink" href="{URL->LASTPAGE}">...{LANG->LastPage}</a>{/if}
{if URL->NEXTPAGE}<a class="PhorumNavLink" href="{URL->NEXTPAGE}">{LANG->NextPage}</a>{/if}
</div>
<span class="PhorumNavHeading PhorumHeadingLeft">{LANG->CurrentPage}:</span>{CURRENTPAGE} {LANG->of} {TOTALPAGES}
</div>
{/if}
{/if}
</div>
DJ Miky
Profil
V tomhle kódu se ti asi nebude nikdo hrabat... Navíc si nenapsal, co ti tam nejde (resp. jakou to hlásí chybu atd.)...
ipetr
Profil
V pohodě, už jsem tu chybu našel, pod tím druhým selectem jsem měl blbě

$result = mysql_query($query1);
while ($newArray = mysql_fetch_array($result)) {
$users[$newArray['user_id']][icq] = $newArray[icq];
}
Toto téma je uzamčeno. Odpověď nelze zaslat.

0