- Home
- Categorie
- Coding e Sistemistica
- Joomla!
- [Risolto] dimensioni modulo login
-
[Risolto] dimensioni modulo login
Ciao gente,
sto strutturando un portale con joomla e volevo mettere il modulo login in orizzontale sotto la testata, e fin qui tutto ok, il problema è che pur avendo messo su un unica linea sia la tabella che compare di richiesta login che quella per il logout,...quest'ultima mi presenta sotto la tabella di logout uno spazio vuoto come se la casella login fosse li ma invisibile.
Non so se sono riuscito a spiegarmi, ma in poche parole quando sono in logout lo spazio occupato dal modulo non è solo quello della sua tabella ma rimane uno spazio vuoto sotto che non riesco ad eliminare.
Sapreste darmi una mano a capire il perchè di tutto ciò?
Uso il normale modulo login di joomla niente di che, ma questo comportamento mi sta mandando fuori di testa e non riesco a risolverlo. :?:bho:x:xGrazie per l'eventuale aiuto.
Ciao.
ParideS.
-
Posta l'indirizzo del sito (no link attivo) e vediamo dove sta il problema.
Intanto vedi se questo codice può esserti utile, calcola che devi editare le misure delle tabelle in base alle tue esigenze, io l'ho creato per un template che aveva poco spazio...<?php /** * @version $Id: mod_login.php 5866 2006-11-28 01:13:26Z friesengeist $ * @package Joomla * @copyright Copyright (C) 2005 Open Source Matters. All rights reserved. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php * Joomla! is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * See COPYRIGHT.php for copyright notices and details. */ // no direct access defined( '_VALID_MOS' ) or die( 'Restricted access' ); global $mosConfig_frontend_login; if ( $mosConfig_frontend_login != NULL && ($mosConfig_frontend_login === 0 || $mosConfig_frontend_login === '0')) { return; } // url of current page that user will be returned to after login if ($query_string = mosGetParam( $_SERVER, 'QUERY_STRING', '' )) { $return = 'index.php?' . $query_string; } else { $return = 'index.php'; } // converts & to & for xtml compliance $return = str_replace( '&', '&', $return ); $registration_enabled = $mainframe->getCfg( 'allowUserRegistration' ); $message_login = $params->def( 'login_message', 0 ); $message_logout = $params->def( 'logout_message', 0 ); $login = $params->def( 'login', $return ); $logout = $params->def( 'logout', $return ); $name = $params->def( 'name', 1 ); $greeting = $params->def( 'greeting', 1 ); $pretext = $params->get( 'pretext' ); $posttext = $params->get( 'posttext' ); if ( $my->id ) { // Logout output // ie HTML when already logged in and trying to logout if ( $name ) { $name = $my->name; } else { $name = $my->username; } ?> <form action="<?php echo sefRelToAbs( 'index.php?option=logout' ); ?>" method="post" name="logout"> <?php if ( $greeting ) { echo _HI; echo $name; } ?> <br /> <div align="center"> <input type="submit" name="Submit" class="button" value="<?php echo _BUTTON_LOGOUT; ?>" /> </div> <input type="hidden" name="option" value="logout" /> <input type="hidden" name="op2" value="logout" /> <input type="hidden" name="lang" value="<?php echo $mosConfig_lang; ?>" /> <input type="hidden" name="return" value="<?php echo sefRelToAbs( $logout ); ?>" /> <input type="hidden" name="message" value="<?php echo $message_logout; ?>" /> </form> <?php } else { // Login output // ie HTML when not logged in and trying to login // used for spoof hardening $validate = josSpoofValue(1); ?> <form action="<?php echo sefRelToAbs( 'index.php' ); ?>" method="POST" name="login" > <?php echo $pretext; ?> <div align="center"> <table width="468" border="0" cellspacing="0" cellpadding="0"> <td width="35%" align="left"> <?php echo _USERNAME; ?> <br /> <input name="username" id="mod_login_username" type="text" class="inputbox" alt="username" size="10" /></td> <td width="35%" align="left"> <?php echo _PASSWORD; ?> <br /> <input type="password" id="mod_login_password" name="passwd" class="inputbox" size="10" alt="password" /></td> <td width="15%" align="left" valign="bottom"> <input type="submit" name="Submit1" class="button" value="<?php echo _BUTTON_LOGIN; ?>" /></td> <td width="15%" align="left" valign="bottom"> <input type="checkbox" name="remember" id="mod_login_remember" class="inputbox" value="yes" alt="Remember Me" /><?php echo _REMEMBER_ME; ?></td> </table> <table border="0" width="468"> <td align="left" width="35%" valign="bottom"><a href="<?php echo sefRelToAbs( 'index.php?option=com_registration&task=lostPassword' ); ?>"><?php echo _LOST_PASSWORD; ?></a></td> <?php if ( $registration_enabled ) { ?> <td align="left" width="65%" valign="bottom"><?php echo _NO_ACCOUNT; ?><a href="<?php echo sefRelToAbs( 'index.php?option=com_registration&task=register' ); ?>"><?php echo _CREATE_ACCOUNT; ?></a></td> <?php } ?> </table> </div> <?php echo $posttext; ?> <input type="hidden" name="option" value="login" /> <input type="hidden" name="op2" value="login" /> <input type="hidden" name="lang" value="<?php echo $mosConfig_lang; ?>" /> <input type="hidden" name="return" value="<?php echo sefRelToAbs( $login ); ?>" /> <input type="hidden" name="message" value="<?php echo $message_login; ?>" /> <input type="hidden" name="force_session" value="1" /> <input type="hidden" name="<?php echo $validate; ?>" value="1" /> </form> <?php } ?>
-
il sito non ancora attivo è questo:
http://www.forumfermignano.it/portale
ho fatto un utente di prova basta che scrivi sia per user che per pass la parola "user".
ho lasciato il bordo alla tabella per fare vedere che quando è loggato la tabella al posto di stare su una riga ne prende due :bho:
qui sotto ti posto il codice del file mod_login.php
Ciao.
e grazie per l'interessamento.
ParideS.[php]
<?php
/**- @version $Id: mod_login.php 7211 2007-04-29 02:26:51Z robs $
- @package Joomla
- @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
- @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
- Joomla! is free software. This version may have been modified pursuant
- to the GNU General Public License, and as distributed it includes or
- is derivative of works licensed under the GNU General Public License or
- other free or open source software licenses.
- See COPYRIGHT.php for copyright notices and details.
*/
// no direct access
defined( '_VALID_MOS' ) or die( 'Restricted access' );
global $mosConfig_frontend_login;
if ( $mosConfig_frontend_login != NULL && ($mosConfig_frontend_login === 0 || $mosConfig_frontend_login === '0')) {
return;
}
// url of current page that user will be returned to after login
if ($query_string = mosGetParam( $_SERVER, 'QUERY_STRING', '' )) {
$return = 'index.php?' . $query_string;
} else {
$return = 'index.php';
}
$registration_enabled = $mainframe->getCfg( 'allowUserRegistration' );
$message_login = $params->def( 'login_message', 0 );
$message_logout = $params->def( 'logout_message', 0 );
$login = $params->def( 'login', $return );
$logout = $params->def( 'logout', $return );
$name = $params->def( 'name', 1 );
$greeting = $params->def( 'greeting', 1 );
$pretext = $params->get( 'pretext' );
$posttext = $params->get( 'posttext' );
if ( $my->id ) {
// Logout output
// ie HTML when already logged in and trying to logout
if ( $name ) {
$name = $my->name;
} else {
$name = $my->username;
}
?>
<table width="100%" border="1" align="left" cellpadding="0" cellspacing="0">
<tr>
<td><form action="<?php echo sefRelToAbs( 'index.php?option=logout' ); ?>" method="post" name="logout">
<?php
if ( $greeting ) {
echo _HI;
echo $name;
}
?>
<input type="submit" name="Submit" class="button" value="<?php echo _BUTTON_LOGOUT; ?>" />
<input type="hidden" name="option2" value="logout" /> <input type="hidden" name="op22" value="logout" />
<input type="hidden" name="lang2" value="<?php echo $mosConfig_lang; ?>" />
<input type="hidden" name="return2" value="<?php echo htmlspecialchars( sefRelToAbs( $logout ) ); ?>" />
<input type="hidden" name="message2" value="<?php echo htmlspecialchars( $message_logout ); ?>" />
</form> </td>
</tr>
</table><?php
} else {
// Login output
// ie HTML when not logged in and trying to login
// used for spoof hardening
$validate = josSpoofValue(1);
?>
<form action="<?php echo sefRelToAbs( 'index.php' ); ?>" method="post" name="login" >
<?php
echo $pretext;
?>
<!-- height="47" --> <table width="100%" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><label for="mod_login_username"><?php echo _USERNAME; ?></label> <label for="mod_login_remember"></label>
<label for="label"></label></td>
<td> <input name="username" id="username2" type="text" class="inputbox" alt="username" size="10" /></td>
<td> <label for="label2"><?php echo _PASSWORD; ?></label> </td>
<td><input type="password" id="passwd" name="passwd" class="inputbox" size="10" alt="password" /></td>
<td><input type="submit" name="Submit2" class="button" value="<?php echo _BUTTON_LOGIN; ?>" />
<label for="remember"></label></td>
<td> <input type="checkbox" name="remember" id="remember" class="inputbox" value="yes" alt="Remember Me" />
<label for="remember"> </label></td>
<td><?php echo _REMEMBER_ME; ?></td>
<td> - <a href="<?php echo sefRelToAbs( 'index.php?option=com_registration&task=lostPassword' ); ?>"><?php echo _LOST_PASSWORD; ?></a></td>
<td> - <a href="<?php echo sefRelToAbs( 'index.php?option=com_registration&task=register' ); ?>"><?php echo _CREATE_ACCOUNT; ?></a>
<label for="mod_login_remember"></label></td>
</tr> </table>
<?php
if ( $registration_enabled ) {
?>
<?php
}
?><?php
echo $posttext;
?>
<input type="hidden" name="option" value="login" />
<input type="hidden" name="op2" value="login" />
<input type="hidden" name="lang" value="<?php echo $mosConfig_lang; ?>" />
<input type="hidden" name="return" value="<?php echo htmlspecialchars( sefRelToAbs( $login ) ); ?>" />
<input type="hidden" name="message" value="<?php echo htmlspecialchars( $message_login ); ?>" />
<input type="hidden" name="force_session" value="1" />
<input type="hidden" name="<?php echo $validate; ?>" value="1" />
</form>
<?php
}
?>
[/php]
-
Scusa, ma dove la vedi la doppia riga ?
-
nel momento in cui è loggato vedi la scritta "salve user" e il bottone esci, e sotto rimane uno spazio vuoto prima che si chiuda la tabella.
almeno a me fa così la tabella non si chiude subito sotto le scritte ma sembra che dia spazio per un'altra riga come se ci fosse una riga nascosta all'interno.
Spero di essermi spiegato.
Ciao.
ParideS.
-
io la vedo bene (sto usando firefox)
-
infatti mi sono accorto che il problema lo da solo su internet explorer.
Sicuramente il browser interpreta male il codice php del file mod_login.php.
mi servirebbe qualche dritta per risolvere il problema di visualizzazione anche su internet explorer,...acc.
Grazie per il feedback Globogsm, se capisci come risolvere fammi sapere io intanto ci studio un pò sopra.
Ciao.
ParideS.
-
l'ho controllato con IE6 e lo vedo uguale a FF, se il problema lo da su IE7, non posso controllare...
-
Si infatti, sono riuscito a sistemarlo, da qualche minuto,
per la cronaca dopo aver capito che era un problema di visualizzazione non ho fatto altro che spostare un tag di chiusura del form dopo i tag di chiusura delle celle della tabella.
Così facendo dreamweaver, con cui lavoro, mi rileva un errore, mentre, sul browser tutto funziona perfettamente senza aggiungere un linea vuota.
per fare un servizio anche agli altri inserisco di seguito il file finale.
Grazie di tutto.
Ciao.
ParideS.[PHP]
<?php
/**- @version $Id: mod_login.php 7211 2007-04-29 02:26:51Z robs $
- @package Joomla
- @copyright Copyright (C) 2005 Open Source Matters. All rights reserved.
- @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php
- Joomla! is free software. This version may have been modified pursuant
- to the GNU General Public License, and as distributed it includes or
- is derivative of works licensed under the GNU General Public License or
- other free or open source software licenses.
- See COPYRIGHT.php for copyright notices and details.
*/
// no direct access
defined( '_VALID_MOS' ) or die( 'Restricted access' );
global $mosConfig_frontend_login;
if ( $mosConfig_frontend_login != NULL && ($mosConfig_frontend_login === 0 || $mosConfig_frontend_login === '0')) {
return;
}
// url of current page that user will be returned to after login
if ($query_string = mosGetParam( $_SERVER, 'QUERY_STRING', '' )) {
$return = 'index.php?' . $query_string;
} else {
$return = 'index.php';
}
$registration_enabled = $mainframe->getCfg( 'allowUserRegistration' );
$message_login = $params->def( 'login_message', 0 );
$message_logout = $params->def( 'logout_message', 0 );
$login = $params->def( 'login', $return );
$logout = $params->def( 'logout', $return );
$name = $params->def( 'name', 1 );
$greeting = $params->def( 'greeting', 1 );
$pretext = $params->get( 'pretext' );
$posttext = $params->get( 'posttext' );
if ( $my->id ) {
// Logout output
// ie HTML when already logged in and trying to logout
if ( $name ) {
$name = $my->name;
} else {
$name = $my->username;
}
?>
<table border="0" align="left" cellpadding="0" cellspacing="6">
<tr>
<td><form action="<?php echo sefRelToAbs( 'index.php?option=logout' ); ?>" method="post" name="logout">
<?php
if ( $greeting ) {
echo _HI;
echo $name;
}
?>
<input type="submit" name="Submit" class="button" value="<?php echo _BUTTON_LOGOUT; ?>" />
<input type="hidden" name="option2" value="logout" />
<input type="hidden" name="op22" value="logout" />
<input type="hidden" name="lang2" value="<?php echo $mosConfig_lang; ?>" />
<input type="hidden" name="return2" value="<?php echo htmlspecialchars( sefRelToAbs( $logout ) ); ?>" />
<input type="hidden" name="message2" value="<?php echo htmlspecialchars( $message_logout ); ?>" />
</td>
</tr>
</form>
</table>
<?php // Login output // ie HTML when not logged in and trying to login // used for spoof hardening
} else { $validate = josSpoofValue(1); ?>
<form action="<?php echo sefRelToAbs( 'index.php' ); ?>" method="post" name="login" >
<!-- <?php
echo $pretext;
?>-->
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="6">
<tr>
<td><label for="mod_login_username"><?php echo _USERNAME; ?></label> <label for="mod_login_remember"></label>
<label for="label"></label></td>
<td> <input name="username" id="username2" type="text" class="inputbox" alt="username" size="10" /></td>
<td> <label for="label2"><?php echo _PASSWORD; ?></label> </td>
<td><input type="password" id="passwd" name="passwd" class="inputbox" size="10" alt="password" /></td>
<td><input type="submit" name="Submit2" class="button" value="<?php echo _BUTTON_LOGIN; ?>" />
<label for="remember"></label></td>
<td> <input type="checkbox" name="remember" id="remember" class="inputbox" value="yes" alt="Remember Me" />
<label for="remember"> </label></td>
<td><?php echo _REMEMBER_ME; ?></td>
<td> - <a href="<?php echo sefRelToAbs( 'index.php?option=com_registration&task=lostPassword' ); ?>"><?php echo _LOST_PASSWORD; ?></a></td>
<td> - <a href="<?php echo sefRelToAbs( 'index.php?option=com_registration&task=register' ); ?>"><?php echo _CREATE_ACCOUNT; ?></a>
<label for="mod_login_remember"></label></td>
</tr> </table>
<?php
if ( $registration_enabled ) {
?>
<?php
}
?>
<!-- <?php
echo $posttext;
?> -->
<input type="hidden" name="option" value="login" />
<input type="hidden" name="op2" value="login" />
<input type="hidden" name="lang" value="<?php echo $mosConfig_lang; ?>" />
<input type="hidden" name="return" value="<?php echo htmlspecialchars( sefRelToAbs( $login ) ); ?>" />
<input type="hidden" name="message" value="<?php echo htmlspecialchars( $message_login ); ?>" />
<input type="hidden" name="force_session" value="1" />
<input type="hidden" name="<?php echo $validate; ?>" value="1" />
</form>
<?php } ?>
[/PHP]
-
Bene
segnalo come risolto...