Uso de campos user ...
 
Avisos
Vaciar todo

Uso de campos user profiles en breezingforms.

6 Respuestas
2 Usuarios
0 Reactions
2,624 Visitas
 Jose
Respuestas: 87
Trusted Member
Topic starter
 

Muy buenas,

en Breezingforms, en enviar piezas de los formularios, necesito poder acceder a un campo que estoy utilizando de user profiles ¿se pueden utilizar estos campos de la misma manera que los de usuario?
por ejemplo:
$user =& JFactory::getUser();
$nombre =$user->name;

muchas gracias.

URL del sitio: https://www.webempresa.com


 
Respondido : 24/02/2012 10:19 am
David Noguera
Respuestas: 4433
Famed Member Moderator
 

Hola Jose,

para añadir campos de usuario estás usando alguna extensión como Community Builder??

En princpio no podrías acceder con el código que has pegado a los campos de usuario, pero lo que si podrías hacer es obtener el id de usuario así:

$user =& JFactory::getUser();
$id = $user->id;

y después hacer una consulta a la tabla de la BBDD que almacena estos campos de usuario así:

$db = JFactory:getDBO();
$db->setQuery("select * from ... where user_id = " . $id);
$obj = $db->loadObject();

Por cierto, la URL que has de poner es la de tu sitio, no la de webempresa.com..

Saludos!


 
Respondido : 24/02/2012 10:43 am
 Jose
Respuestas: 87
Trusted Member
Topic starter
 

Muchas gracias David,

estoy intentando crear una "Extranet" dedicada sólo al personal de mi empresa. No es externa. Si me indicáis alguna manera de poner la dirección de forma que sólo vosotros podáis verla lo haré gustoso.

Gracias de nuevo.
Saludos.


 
Respondido : 24/02/2012 12:20 pm
 Jose
Respuestas: 87
Trusted Member
Topic starter
 

Buenas de nuevo David,

según veo, la manera de acceder a los datos del user profiles sería algo así como:
$db = JFactory:getDBO();
$db->setQuery("select * from user_profiles where profile_key = 'profile.favoritebook' and user_id = " . $id);
$obj = $db->loadObject();

no se si la sintaxis es correcta... pero ahora, necesitaría acceder $obj y extraer el valor del campo profile_value
¿como hago eso? ¿sería algo así?
$valorquequiero = $obj->profile_value ???

muchas gracias.


 
Respondido : 24/02/2012 12:48 pm
David Noguera
Respuestas: 4433
Famed Member Moderator
 

Hola Jose, un par de cosas que he visto:

Normalmente las tablas en Joomla empiezan por jos_, pero puede ser cualquier otro preijo, el API de Joomla te permite usar este comodin #__ que internamente lo sustituye por el prefijo que sea, así:

$db->setQuery("select * from #__user_profiles where profile_key = 'profile.favoritebook' and user_id = " . $id);

En obj se guarda un objeto con tantas propiedades como campos tiene el resultado de la búsqueda select, por tanto, si en la select se devuelve un campo profile_value, efectivamente deberías de hacerlo así:

$valorquequiero = $obj->profile_value ;

Saludos!


 
Respondido : 24/02/2012 1:30 pm
 Jose
Respuestas: 87
Trusted Member
Topic starter
 

Muchas gracias David,

luego lo probaré y te cuento.

Gracias de nuevo.


 
Respondido : 27/02/2012 7:24 am