llenar un SelectLis...
Avisos
Vaciar todo

llenar un SelectList atraves de una consulta  

 
Rodrigo
 Rodrigo
Estimable Member

que tal webempresa

ahora les escribo para preguntarles si alguien sabe algun modo de llenar el value de un SelectList de mi breesingforms en quickmode, lo eh hecho con un Textfield colocando en su propiedad Value un bloque PHP que extrae algun valor a mi tabla de mi BD, pero ahora quiero llenar un select List de acuerdo al contenido de una de las columnas de una de mis tablas, alguien puede iluminarme con alguna idea.

Muchas gracias por todo webempresa, reciban un cordial saludos desde Mexico

Citar
Respondido : 28/11/2010 2:28 am
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola Chapulin

Aquí te envió el código que esta basado en http://crosstec.de/support/index.php?pid=knowledgebase&cmd=viewentclient&id=52&PHPSESSID=ff28c086073d0b70f350930eeddac6bc

Este código tiene que colocarse en Piezas de Formulario "Antes de la carga del Formulario" (tener cuidado con la versión traducida de BreezinForms, ya que esta traducción esta intercambiada)

$this->execPieceByName('ff_InitLib');

$rows= ff_select("select id, title from #__content;");
$cad = "";

for ($i = 0; $i title.";".$rows[$i]->id."n";
}

function ff_setSelectList($name, $value)
{
  global $ff_processor;
  for ($r = 0; $r rowcount; $r++) {
    $row =& $ff_processor->rows[$r];
    if ($row->name==$name)
      $row->data2 = $value;
    unset($row);
  } // for
} // ff_setSelectList

ff_setSelectList('lista', $cad);

Tienes que reemplazar elemento "lista", la consulta SQL y los campos de la tabla en el bucle for.

Saludos

ResponderCitar
Respondido : 02/12/2010 9:50 pm

Cursos Gratuitos WordPress

Rodrigo
 Rodrigo
Estimable Member

muchas gracias jmarreros

lo probaré de inmediato, ya les estaré comentando los resultados,

Reciban un saludo desde Mexico Webempresa.

ResponderCitar
Respondido : 02/12/2010 11:27 pm
Rodrigo
 Rodrigo
Estimable Member

que tal jmarreros

veras no consigo llenar mi SELECT-LIST, he hecho lo que me indicas, tal ves pudieras decirme donde está mal mi codigo

$this->execPieceByName('ff_InitLib');

$rows= ff_select("select id, nombrecarrera from #__carrera;"); //Tengo una tabla llamado carrera con campos id, nombrecarrera

$cad = "";

for ($i = 0; $i nombrecarreras.";".$rows[$i]->id."n"; //aqui he hecho uns subtitucion de title por nombrecarreras
}

function ff_setSelectList($name, $value)
{
global $ff_processor;
for ($r = 0; $r rowcount; $r++) {
$row =& $ff_processor->rows[$r];
if ($row->name==$name)
$row->data2 = $value;
unset($row);
}
}
ff_setSelectList('carreras', $cad); // mi SELECT-LIST se llama carreras ademas no entiendo que valores van como parametros en la variable $cad

el caso es que no carga nada en mi select-list, es mas solo aparece el label con el texto que le eh puesto "seleccione porfavor la carrera que cursa" pero adelante del texto no hay nada ni siquiera el control vacio.

Espero me puedas seguir hechando una mano, muchas gracias por todo.
Un saludo desde México

ResponderCitar
Respondido : 07/12/2010 7:20 pm

juan
 juan
Usuario activo

cheka esto a ver si te sirve

http://lizzie711.wordpress.com/manejo-de-listas-desplegables-dependientes-con-joomla/

ResponderCitar
Respondido : 07/12/2010 7:42 pm
Rodrigo
 Rodrigo
Estimable Member

Hola kutgo:

Se ve interezante gracias por el aporte, lo revisé exactamente, pero se me hace que es ir bastante más allá de lo que podria ser una solusión, implica crear modulos por que de hecho habla sobre la programacion de modulos, algo en lo que no ando metido mucho, seguiré buscando soluciones, muchas gracais pro su ayuda. Un saludo desde Mexico

ResponderCitar
Respondido : 07/12/2010 7:53 pm

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola Chapulin

En tu código, en el blucle for, es nombrecarrera pero tu colocaste nombrecarreras (con "s" al final)

Saludos

ResponderCitar
Respondido : 07/12/2010 8:16 pm
Rodrigo
 Rodrigo
Estimable Member

Hola jmarreros :

Primeramente quiero agradecerte la asistencia muchas gracias de verdad

veras no me resulta aun

$this->execPieceByName('ff_InitLib');

$rows= ff_select("select Id, nombrecarrera from #__carrera;"); //Tengo una tabla llamado carrera con campos id, nombrecarrera

$cad = "";
for ($i = 0; $i nombrecarrera.";".$rows[$i]->Id."n"; //aqui he hecho uns subtitucion de title por nombrecarreras
}

function ff_setSelectList($name, $value)
{
global $ff_processor;
for ($r = 0; $r rowcount; $r++) {
$row =& $ff_processor->rows[$r];
if ($row->name==$name)
$row->data2 = $value;

//No crees que esta parte debe ser sustituido por los valores del SELECT
//quedando asi:::::::::::::::::::::::::
//if ($row->nombrecarrera==$name)
//$row->Id= $value;

unset($row);
}
}
ff_setSelectList('carreras', $cad);

no pues no ya lo probé y no funciona

ResponderCitar
Respondido : 07/12/2010 8:35 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Rodrigo
 Rodrigo
Estimable Member

explico un poco mejor:

el valor de nombrecarrera es la lista que se le debe de desplegar al usuario el el formulario osea esta integracion me parece correcta
$cad.= "0;".$rows[$i]->nombrecarrera.";".$rows[$i]->Id."n";

la ultima parte del bloque ";".$rows[$i]->Id."n"; es la parte del value que resultará de seleccionar un elemento de la lista el cual es lo que me mintereza finalmente creo que la logica es la correcta, me intereza mostrar los nombrecarrera y tomar solamente el id de la carerra seleccionada

ResponderCitar
Respondido : 07/12/2010 8:43 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola chapulin

Te sale algún error, o simplemente no te llena la lista, en este último caso asegurarte de lo siguiente, utilizar el idioma Ingles en tu backend y verificar si el componente breezing forms, mostrándose en inglés, tiene el código correctamente colocado en Before the form en la piezas de formulario.

Saludos

ResponderCitar
Respondido : 07/12/2010 9:01 pm

wpdoctor-revisa-la-salud-de-tu-wordpress

Rodrigo
 Rodrigo
Estimable Member

ya eh puesto como predeterminado como lenguaje a ingles enpanel de control-->gestor de idiomas y en las pestañas SITIO y ADMINISTRADOR pero al ir a mi breezingforms esta en español Piezas del formulario e Inicio del Submit
¿donde mas debo especificar al idioma Ingles?

ResponderCitar
Respondido : 07/12/2010 9:23 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

El cambio de idioma era sólo para que te fijes de un bug de traducción

Pues debería aparecerte en inglés si cambiaste el lenguaje para la administración.

El código es a nivel de formulario NO de submit

Es decir tienes que colocarlo en Piezas del Formulario, y si lo ves en ingles en la parte "Before the form"

Saludos

ResponderCitar
Respondido : 07/12/2010 9:57 pm

Cursos Gratuitos WordPress

Rodrigo
 Rodrigo
Estimable Member

bien perdon por lo de submit,
jeje en realidad aparece aun el texto de "inicio del Formulario en español" pero como te menciono eh cambiado el lenguaje predeterminado a ingles

$this->execPieceByName('ff_InitLib');

$rows= ff_select("select Id, nombrecarrera from #__carrera;");
//echo $rows;
$cad = "";
for ($i = 0; $i nombrecarrera.";".$rows[$i]->Id."n";
}

function ff_setSelectList($name, $value)
{
global $ff_processor;
for ($r = 0; $r rowcount; $r++) {
$row =& $ff_processor->rows[$r];
//echo $row;
if ($row->name==$name) // especificamente no entiendo a que se refiere con name
$row->data2 = $value;especificamente no entiendo a que se refiere con data2 ¿quien los define?
unset($row);
}
}
echo $cad;
ff_setSelectList('nombrecarrera', $cad);

aun no resuelvo el codigo pero no me arroja ningun mensaje de error, eh mandado a imprimir la variable $cad y si me muestra correctamente los valores del siguiente modo al final de mi formulario :
0;Licenciatura en Informatica;1 0;Ingenieria en Gestión Empresarial;2 0;Ingenieria en Agronomía;3 0;Licenciatura en Administración;4

Supongo entonces que el problema puede estar al armar el SELECT-LIST en:

function ff_setSelectList($name, $value)
{
global $ff_processor;
for ($r = 0; $r rowcount; $r++) {
$row =& $ff_processor->rows[$r];
//echo $row;
if ($row->name==$name)
$row->data2 = $value;
//echo $row;
unset($row);
}
}

Un saludo jmarreros

ResponderCitar
Respondido : 07/12/2010 10:03 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola chapulin

El Select list no se arma, esa función lo que hace es buscar el elemento select list y le asigna simplemente el valor, es decir la cadena construida.

Prueba poniendo tu código en la opción "Despues del Formulario" (aunq esto es un bug)

Saludos.

ResponderCitar
Respondido : 07/12/2010 10:07 pm

Rodrigo
 Rodrigo
Estimable Member

funciona de ese modo jmarreros, seguiré buscando alguna solucion para evitar lo del bug

Muchas gracias por todo, un saludo cordial

ResponderCitar
Respondido : 07/12/2010 10:10 pm