Foros del Web » Creando para Internet » Sistemas de gestión de contenidos »

Logueo en código phpnuke

Estas en el tema de Logueo en código phpnuke en el foro de Sistemas de gestión de contenidos en Foros del Web. Si tengo un usuario y una clave, ¿cómo puedo loguear a dicho usuario a través del código?...
  #1 (permalink)  
Antiguo 17/11/2009, 04:24
 
Fecha de Ingreso: noviembre-2009
Mensajes: 10
Antigüedad: 14 años, 5 meses
Puntos: 0
Logueo en código phpnuke

Si tengo un usuario y una clave, ¿cómo puedo loguear a dicho usuario a través del código?
  #2 (permalink)  
Antiguo 17/11/2009, 17:23
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: Logueo en código phpnuke

no se entiende lo que queres hacer, explicate un poco mejor.

salu2
  #3 (permalink)  
Antiguo 18/11/2009, 09:35
 
Fecha de Ingreso: noviembre-2009
Mensajes: 10
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Logueo en código phpnuke

Necesito escribir el código (en el archivo php) para que cualquiera que acceda al nuke ente logueado con ese usuario.
  #4 (permalink)  
Antiguo 19/11/2009, 09:45
 
Fecha de Ingreso: noviembre-2009
Mensajes: 10
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Logueo en código phpnuke

Sé que el siguiente código tiene algunos errores.

¿Me podéis ayudar a corregirlo y en qué archivo debo insertarlo para que cualquier usuario al entrar en mi nuke, entre como este usuario y no se destruya su sesión? Por ejemplo, cuando pongo algo en el index.php hay funciones en el mainfile.php que destruyen la sesión.

Muchas gracias.

$_POST["username"] = "miusuario";
$_POST["user_password"] = "miclave";

echo "<form method='post' action="/modules.php?name=Your_Account&username=".$_POST["username"].'&user_password='. $_POST["user_password"].'&op=login'">";
  #5 (permalink)  
Antiguo 19/11/2009, 12:19
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: Logueo en código phpnuke

fijate en la carpeta your_count en el index.php, ahi debe hacer la consulta a la base de datos para que verifique que el usuario existe, pero sigo sin entender la funcionalidad de lo que buscas, vos queres que todas las secciones esten disponibles para los usuarios ya sean logueados o no?
  #6 (permalink)  
Antiguo 19/11/2009, 13:55
 
Fecha de Ingreso: noviembre-2009
Mensajes: 10
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Logueo en código phpnuke

Necesito que cualquier persona que entre en mi nuke entre logueado como un usuario determinado en cuanto escriba en su navegador la url de mi dominio, y que pueda acceder a todos los contenidos, bloque y módulos; pero que el rol anónimo no tenga acceso a los contenidos.

De este modo los datos de este usuario único se los paso a un desarrollo en java+ php contra oracle. Así puedo aprovechar el nuke, y posteriormente ofrecer otras posibilidades con una DB de usuarios distinta (la de Oracle).
  #7 (permalink)  
Antiguo 20/11/2009, 11:59
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: Logueo en código phpnuke

mmmm bastante rebuscado lo que queres, el tema esta que siempre que se cierre un navegador se va a perder la session proba de crear un usuario y en el index del root en la primer linea de codigo asignarle a la session de usuario el nombre de usuario. no se me ocurre otra manera de hacerlo.
  #8 (permalink)  
Antiguo 23/11/2009, 01:42
 
Fecha de Ingreso: noviembre-2009
Mensajes: 10
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Logueo en código phpnuke

He puesto en el index.php del root

$user = htmlspecialchars($_GET["$user"]);
$user_password = htmlspecialchars(stripslashes($user_password));
$user = "miuser";
$user_password = "mipass";

Pero cuando accede no es capaz de cargar al usuario.

¿Podríais ayudarme, por favor?

Gracias.
  #9 (permalink)  
Antiguo 23/11/2009, 11:05
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: Logueo en código phpnuke

es que le estas pasando un $_get que seguro esta vacio, proba así:
Código php:
Ver original
  1. $user = "nombredeusuarioquequeresusar"
  2. $user_password = md5('contraseñaquequeresuar');

Y como te dije busca en el modulo you_account y fijate como guarda la session del usuario algo asi $_session['username'] por ejemplo y si en el index.php pregunta si esa session esta vacia hace tal cosa sino hace otra, entonces despues en la primer linea deberias poner algo asi:
$_session['username']="nombrequequeresusar";

salu2
  #10 (permalink)  
Antiguo 25/11/2009, 01:39
 
Fecha de Ingreso: noviembre-2009
Mensajes: 10
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Logueo en código phpnuke

Había probado

$username = "miuser";
$user_password = md5("mipass");
$user_password = htmlspecialchars(stripslashes($user_password));

Pero tampoco me funciona:

La función is_user es:


if (!is_user($user)) {
$title = _LOGIN;
$boxstuff = "<form action=\"modules.php?name=Your_Account\" method=\"post\">";
$boxstuff .= "<center><font class=\"content\">"._NICKNAME."<br>";
$boxstuff .= "<input type=\"text\" name=\"username\" size=\"8\" maxlength=\"25\"><br>";
$boxstuff .= ""._PASSWORD."<br>";
$boxstuff .= "<input type=\"password\" name=\"user_password\" size=\"8\" maxlength=\"20\"><br>";
if (extension_loaded("gd") AND ($gfx_chk == 2 OR $gfx_chk == 4 OR $gfx_chk == 5 OR $gfx_chk == 7)) {
$boxstuff .= ""._SECURITYCODE.": <img src='?gfx=gfx&amp;random_num=$random_num' border='1' alt='"._SECURITYCODE."' title='"._SECURITYCODE."'><br>\n";
$boxstuff .= ""._TYPESECCODE."<br><input type=\"text\" NAME=\"gfx_check\" SIZE=\"7\" MAXLENGTH=\"6\">\n";
$boxstuff .= "<input type=\"hidden\" name=\"random_num\" value=\"$random_num\"><br>\n";
} else {
$boxstuff .= "<input type=\"hidden\" name=\"random_num\" value=\"$random_num\">";
$boxstuff .= "<input type=\"hidden\" name=\"gfx_check\" value=\"$code\">";
}
$boxstuff .= "<input type=\"hidden\" name=\"op\" value=\"login\">";
$boxstuff .= "<input type=\"submit\" value=\""._LOGIN."\"></font></center></form>";
$boxstuff .= "<center><font class=\"content\">"._ASREGISTERED."</font></center>";
themesidebox($title, $boxstuff);
}
}


Pero no sé cómo combinarlo.

Por favor, ¿podrías ayudarme?

Gracias.
  #11 (permalink)  
Antiguo 25/11/2009, 07:02
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: Logueo en código phpnuke

en el archivo header.php tenes esto:
Código php:
Ver original
  1. <?php
  2.  
  3. /************************************************************************/
  4. /* PHP-NUKE: Advanced Content Management System                         */
  5. /* ============================================                         */
  6. /*                                                                      */
  7. /* Copyright (c) 2002 by Francisco Burzi                                */
  8. /* http://phpnuke.org                                                   */
  9. /*                                                                      */
  10. /* This program is free software. You can redistribute it and/or modify */
  11. /* it under the terms of the GNU General Public License as published by */
  12. /* the Free Software Foundation; either version 2 of the License.       */
  13. /************************************************************************/
  14. /* NUKE ET: Modificaci� del PHP-Nuke                                   */
  15. /* ==================================                                   */
  16. /*                                                                      */
  17. /* Modificaciones y creaciones exclusivas de la ET creadas por Truzone  */
  18. /*                                                                      */
  19. /* Copyright (c) 2004 por Truzone                                       */
  20. /* http://www.truzone.org                                               */
  21. /************************************************************************/
  22.  
  23. if(!defined('NUKE_ET')) {
  24.     Header("Location: error.php?op=e403");
  25.     die();
  26. }
  27.  
  28. require_once("mainfile.php");
  29.  
  30. global $google_tap, $name, $prefix, $db;
  31.  
  32. if($google_tap==1){
  33.     ob_start();
  34. }
  35.  
  36. ##################################################
  37. # Include some common header for HTML generation #
  38. ##################################################
  39.  
  40. $header = 1;
  41.  
  42. function head() {
  43.     global $slogan, $sitename, $module_name, $home, $banners, $nukeurl, $Version_Num, $artpage, $topic, $hlpfile, $user, $hr, $theme, $cookie, $bgcolor1, $bgcolor2, $bgcolor3, $bgcolor4, $textcolor1, $textcolor2, $forumpage, $adminpage, $userpage, $pagetitle, $precarga, $charset;
  44.     $ThemeSel = get_theme();
  45.     include("themes/$ThemeSel/theme.php");
  46.     echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";
  47.     echo "<html>\n";
  48.     echo "<head>\n";
  49.     echo "<title>$sitename $pagetitle</title>\n";
  50.     include("includes/meta.php");
  51.     include("includes/javascript.php");
  52.      if(file_exists("modules/$module_name/javascript.php")){
  53.      include("modules/$module_name/javascript.php");
  54.      }
  55.     if (file_exists("themes/$ThemeSel/images/favicon.ico")) {
  56.      echo "<link REL=\"shortcut icon\" HREF=\"themes/$ThemeSel/images/favicon.ico\" TYPE=\"image/x-icon\">\n";
  57.     }
  58.  
  59.  
  60.     echo "<LINK REL=\"StyleSheet\" HREF=\"themes/$ThemeSel/style/style.css\" TYPE=\"text/css\">\n\n\n";
  61.     echo "<link rel=\"alternate\" type=\"application/rss+xml\" title=\"RSS\" href=\"backend.php\">\n";
  62.     include("includes/my_header.php");
  63.     echo "\n\n\n</head>\n\n";
  64.     themeheader();
  65. }
  66.  
  67.  
  68. global $home,$act_nuke,$admin,$prefix,$user_prefix,$cookie,$user,$db,$guardar_estats;
  69.  
  70. if(($act_nuke==0) AND (!is_admin($admin))){
  71. Header("Location: error.php?op=off");
  72. die();
  73. }
  74.  
  75.  
  76. online();
  77.  
  78. head();
  79.  
  80. if($guardar_estats=='1'){
  81.  
  82. include("includes/counter.php");
  83. }else{
  84. global $ora, $oral, $user, $cookie, $admin, $prefix, $db, $nukeurl, $REMOTE_ADDR, $HTTP_SERVER_VARS, $HTTP_USER_AGENT;
  85. }
  86.  
  87. if(is_user($user)){
  88.     cookiedecode($user);
  89.     $resul = $db->sql_query("select * from ".$prefix."_mens_privados where estado='1' and enviado_a='$cookie[0]'");
  90.     $num = $db->sql_numrows($resul);
  91.     $num = intval($num);
  92.         if($num >= 1){
  93.         echo "<center><table width=\"90%\" bgcolor='red'><tr><td align='center'>"
  94.         . "<h3>Tienes un nuevo mensaje privado, para acceder a tu bandeja de "
  95.         . "entrada click <a href=\"modules.php?name=Mensajes_Privados\">aqui</a></h3>"
  96.         . "</td></tr></table></center>";
  97.         $db->sql_query("update ".$prefix."_mens_privados set estado='5' where estado='1' and enviado_a='$cookie[0]'");
  98.         }
  99. }
  100. if ($home == 1) {
  101.     message_box();
  102.     blocks(Center);
  103. }
  104.  
  105. ?>

antes de esta linea :
Código php:
Ver original
  1. if(is_user($user)){

agrega esto:
Código php:
Ver original
  1. $user="nombredeusuario";

si sigue sin salir revisa el index.php del you_account como funciona. Más pistas no te puedo dar, por lo menos gratis jejeje
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:30.