Foros del Web » Creando para Internet » Herramientas y Software »

Problema ComboBox [DW]

Estas en el tema de Problema ComboBox [DW] en el foro de Herramientas y Software en Foros del Web. Buenas gente Resulta que quiero que dentro de un ComboBox aparezcan todos los campos que tengo en una Tabla. Para eso uso un ComboBox comun ...
  #1 (permalink)  
Antiguo 22/07/2008, 14:10
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
Problema ComboBox [DW]

Buenas gente

Resulta que quiero que dentro de un ComboBox aparezcan todos los campos que tengo en una Tabla. Para eso uso un ComboBox comun y corriente, con su respectivo nombre, y dentro le pongo como campo dinamico la ID y el Nombre, y luego REPITO REGION para que esten todos.

La cosa es que lo he hecho bien una vez, pero ahora creo que le habre errado al codigo algo, pero SOLO me muestra 1 campo. Asi que no puedo mostrar todos.

El codigo lo tengo asi:

Código PHP:
<select name="id_usuario" id="id_usuario">
        <?php
do {  
?>
        <option value="<?php echo $row_rsUsers['id']?>"<?php if (!(strcmp($row_rsUsers['id'], $row_rsUsers['id']))) {echo "selected=\"selected\"";} ?>><?php echo $row_rsUsers['nombre']?></option>
        <?php
} while ($row_rsUsers mysql_fetch_assoc($rsUsers));
  
$rows mysql_num_rows($rsUsers);
  if(
$rows 0) {
      
mysql_data_seek($rsUsers0);
      
$row_rsUsers mysql_fetch_assoc($rsUsers);
  }
?>
      </select>
Espero me puedan ayudar, ya que no logro que me muestre todos los Usuarios ahi dentro.

Saludos y Gracias
__________________
CabaSoft Networks
  #2 (permalink)  
Antiguo 22/07/2008, 18:40
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Respuesta: Problema ComboBox [DW]

¿estás haciendo un para la misma consulta más arriba? ¿Sabes que Dw tiene una función para hacer combo boxes dinámicos? Aquí explico cómo:
http://www.forosdelweb.com/f17/lista-dinamica-con-dreamweaver-464783/
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #3 (permalink)  
Antiguo 22/07/2008, 18:45
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
De acuerdo Respuesta: Problema ComboBox [DW]

Hola juaniquillo!

Gracias, la verdad es que antes de preguntarlo estube buscando en tus Post los minitutoriales de DW jeje y encontre ese de Menu Dinamico, lo use de esa forma, lo use desde Codigo todo, lo use desde un ejemplo de DW visto por otra web, y la verdad es que no corre de ninguna forma.

Del tutorial que pusiste vos, no entendi que va en el Ultimo punto de todos, que vos pones que debe ir un valor, aunke probe con miles de valores, desde 0, 1, Vacio, el Recordset['id'], etc.

Lo que me esta pareciendo es que esa es una pagina que se accede Desde una ID, es decir, esta en el PERFIL de los usuarios, y solo se accede ahi desde por ejemplo: Perfil.php?id=1 Y toma el valor del user 1.

Entonces, todo se ve bien, es mas Capta el valor de algun usuario al menos... pero siempre de 1 y no de la tabla completa.

Yo tengo un Recordset sin filtrar, comun, de los que listan la informacion. Luego puse el recordset, en los dos de abajo elegi el Campo ID y el Username, y en el ultimo, lo que te dije arriba, puse de todo.

No se que hacer... no hay manera. Espero una ayudita o idea.

Saludos y Gracias x tu interes

EDITO:

Me olvidaba, tambien puse el Codigo PHP que vos usas abajo, adaptado a mi Recordset, pero tampoco va...

Adios
__________________
CabaSoft Networks

Última edición por nicolyto77; 22/07/2008 a las 18:50 Razón: Correccion...
  #4 (permalink)  
Antiguo 22/07/2008, 19:06
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Respuesta: Problema ComboBox [DW]

La verdad es que no importa si esta página es de general o de detalle. Para explicarte mejor, ese select del tutorial muestra todos los valores de un recorset ya antes hecho. Los selects se usan siempre cuando tienes múltiples opciones. Para usar los selects, como ya debes saber, necesitas dos valores (que igualmente pueden ser el mismo). Un 'Label', que es lo que se le enseña al usuario, y un 'Value' que es lo que se envia con el formulario. Ahora que vi bien tu código tienes un:

Código PHP:
if($rows 0) {
      
mysql_data_seek($rsUsers0);
      
$row_rsUsers mysql_fetch_assoc($rsUsers);
  } 
que no se para que te sirve. Creo que es por eso que no está haciendo la repetición, porque estas llamando la función mysql_fetch_assoc dos veces para el mismo query. Esa funcion de Dw yo la he usado múltiples veces y me funciona bien. Lo que crea es este código:


Código PHP:
<select name="select">
<?php
do {  
?>
<option value="<?php echo $data ['campo_1']?>"><?php echo $$data ['campo_2']?></option>
<?php
} while ($data mysql_fetch_assoc($Recordset1));
?>
</select>
Lo que hace es repetir las mismas veces como valores tiene tu recordset e irá creando las diferente opciones opciones. En el campo_1 pones el Value, y el campo_2 pones el Label.

Me dices si entendiste mejor.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #5 (permalink)  
Antiguo 22/07/2008, 19:09
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
De acuerdo Respuesta: Problema ComboBox [DW]

Holas

Ahora voy mejorando jeje

Entonces, creo que el problema esta en que cree como 200 Recordsets, y varias veces el Code ese del Select, y por ahi se mezclo todo. Creo que el error mio fue haberlo hecho a mano, creando un select vacio, poniendo los campos y desde codigo, Repetir Region.

Otra cosa, al final no se que iba en el Ultimo campo jeje es importante? o lo puedo dejar vacio??

Ya mismo lo voy probando, y luego te cuento como me fue.

Gracias x todo
__________________
CabaSoft Networks
  #6 (permalink)  
Antiguo 22/07/2008, 19:27
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
Sonrisa Respuesta: Problema ComboBox [DW]

Holas denuevo

Probe el codigo denuevo, lo que hice fue lo siguiente y el DW me genero ese codigo que te habia mensionado antes:

* Creo Recordset
* Pongo un SELECT
* Voy a Datos Dinamicos | Menu Dinamico
* En el Menu selecciono el Recordset, el ID y el Username [Value y Label]
* Acepto, pruebo y no funciona

Despues, pegue tu codigo, corrigiendo mis datos, y tampoco funciona... No se que hacer, es increible que no funcione, ya que en otra de mis paginas, tengo un Recordset creado de un ejemplo de otra Web, y si funciona... y este no

Aca el codigo que me quedo:

Código PHP:
<select name="id_usuario">
<?php
do {  ?>
<option value="<?php echo $row_rsUsuarios['id']; ?>"><?php echo $row_rsUsuarios['username']; ?></option>
<?php
} while ($row_rsUsuarios mysql_fetch_assoc($rsUsuarios));
?>
</select>
No entiendo porque no funciona

Lo unico que se, es que ADEMAS de ese error, sale otro error en la pagina que no se si tendra que ver, que dice esto:

Cita:
Notice: Undefined variable: totalRows_rsMEs in E:\Archivos de programa\EasyPHP 2.0b1\www\men.php on line 142
Donde la linea 142 es sobre el Recordset de usuarios Comun y Corriente q crea el DW:

Código PHP:
<?php
mysql_select_db
($database_FS$FS);
$query_rsUsuarios "SELECT * FROM registro ORDER BY registro.username";
$rsUsuarios mysql_query($query_rsUsuarios$FS) or die(mysql_error());
$row_rsUsuarios mysql_fetch_assoc($rsUsuarios);
$totalRows_rsUsuarios mysql_num_rows($rsUsuarios);
?>
Solo aparece el mensaje, si entro Logueado con un usuario; sino... no aparece nada.

Saludos y Gracias

EDITO:

Perdon, el error ese aparece en la OTRA pagina, la que te envia a crear los Mensajes.

Saludos
__________________
CabaSoft Networks

Última edición por nicolyto77; 22/07/2008 a las 19:31 Razón: Correccion...
  #7 (permalink)  
Antiguo 22/07/2008, 19:46
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Respuesta: Problema ComboBox [DW]

¿Pero dónde dice totalRows_rsMEs en tu página? Se supone que esa es la variable del error. Creo que lo mejor es que pongas la página completa para poder ver cual es el problema.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #8 (permalink)  
Antiguo 22/07/2008, 19:51
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
Respuesta: Problema ComboBox [DW]

Perdon, pero ese salia en la pagina anterior a la que envia los mensajes jeje

Lo otro no he podido resolverlo... no puedo ni entender porque no funciona

Aqui la pagina Completa:

Código PHP:
<?php require_once('Connections/FS.php'); ?>
<?php
//initialize the session
if (!isset($_SESSION)) {
  
session_start();
}

// ** Logout the current user. **
$logoutAction $_SERVER['PHP_SELF']."?doLogout=true";
if ((isset(
$_SERVER['QUERY_STRING'])) && ($_SERVER['QUERY_STRING'] != "")){
  
$logoutAction .="&"htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset(
$_GET['doLogout'])) &&($_GET['doLogout']=="true")){
  
//to fully log out a visitor we need to clear the session varialbles
  
$_SESSION['MM_Username'] = NULL;
  
$_SESSION['MM_UserGroup'] = NULL;
  
$_SESSION['PrevUrl'] = NULL;
  unset(
$_SESSION['MM_Username']);
  unset(
$_SESSION['MM_UserGroup']);
  unset(
$_SESSION['PrevUrl']);
    
  
$logoutGoTo "index.php";
  if (
$logoutGoTo) {
    
header("Location: $logoutGoTo");
    exit;
  }
}
?><?php
if (!function_exists("GetSQLValueString")) {
function 
GetSQLValueString($theValue$theType$theDefinedValue ""$theNotDefinedValue ""
{
  
$theValue get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;

  
$theValue function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch (
$theType) {
    case 
"text":
      
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
      break;    
    case 
"long":
    case 
"int":
      
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case 
"double":
      
$theValue = ($theValue != "") ? "'" doubleval($theValue) . "'" "NULL";
      break;
    case 
"date":
      
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
      break;
    case 
"defined":
      
$theValue = ($theValue != "") ? $theDefinedValue $theNotDefinedValue;
      break;
  }
  return 
$theValue;
}
}

$editFormAction $_SERVER['PHP_SELF'];
if (isset(
$_SERVER['QUERY_STRING'])) {
  
$editFormAction .= "?" htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset(
$_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  
$insertSQL sprintf("INSERT INTO mps (id, id_usuario, asunto, autor, mensaje, fecha) VALUES (%s, %s, %s, %s, %s, %s)",
                       
GetSQLValueString($_POST['id'], "int"),
                       
GetSQLValueString($_POST['id_usuario'], "int"),
                       
GetSQLValueString($_POST['asunto'], "text"),
                       
GetSQLValueString($_POST['autor'], "text"),
                       
GetSQLValueString($_POST['mensaje'], "text"),
                       
GetSQLValueString($_POST['fecha'], "date"));

  
mysql_select_db($database_FS$FS);
  
$Result1 mysql_query($insertSQL$FS) or die(mysql_error());

  
$insertGoTo "mp.php";
  if (isset(
$_SERVER['QUERY_STRING'])) {
    
$insertGoTo .= (strpos($insertGoTo'?')) ? "&" "?";
    
$insertGoTo .= $_SERVER['QUERY_STRING'];
  }
  
header(sprintf("Location: %s"$insertGoTo));
}

$colname_rsUserID "-1";
if (isset(
$_GET['id'])) {
  
$colname_rsUserID $_GET['id'];
}
mysql_select_db($database_FS$FS);
$query_rsUserID sprintf("SELECT * FROM registro WHERE id = %s"GetSQLValueString($colname_rsUserID"int"));
$rsUserID mysql_query($query_rsUserID$FS) or die(mysql_error());
$row_rsUserID mysql_fetch_assoc($rsUserID);
$totalRows_rsUserID mysql_num_rows($rsUserID);

mysql_select_db($database_FS$FS);
$query_rsUsuarios "SELECT * FROM registro ORDER BY username ASC";
$rsUsuarios mysql_query($query_rsUsuarios$FS) or die(mysql_error());
$row_rsUsuarios mysql_fetch_assoc($rsUsuarios);
$totalRows_rsUsuarios mysql_num_rows($rsUsuarios);
?><style type="text/css">
<!--
body,td,th {
    font-size: 12px;
    color: #663300;
}
body {
    background-color: #F4FFE4;
}
-->
</style>

<?php
mysql_free_result
($rsUserID);

mysql_free_result($rsUsuarios);
?>

<p>Enviar mensajes.... 
  <?php if ($totalRows_rsUserID 0) { // Show if recordset not empty ?>
    Gracias <strong><?php echo $row_rsUserID['username']; ?></strong>
  <?php // Show if recordset not empty ?>
</p>
<p>&nbsp;
  <?php if ($totalRows_rsUserID 0) { // Show if recordset not empty ?>
    <a href="<?php echo $logoutAction ?>">Desconectar</a>
    <?php // Show if recordset not empty ?>
</p>
<hr />
<form action="<?php echo $editFormAction?>" method="post" name="form1" id="form1">
  <table align="center">
    <tr valign="baseline">
      <td nowrap="nowrap" align="right">¿A quien?</td>
      <td><label>
      <select name="id_usuario">
<?php
do {  ?>
<option value="<?php echo $row_rsUsuarios['id']; ?>"><?php echo $row_rsUsuarios['username']; ?></option>
<?php
} while ($row_rsUsuarios mysql_fetch_assoc($rsUsuarios));
?>
</select>
      </label></td>
    </tr>
    <tr valign="baseline">
      <td nowrap="nowrap" align="right">Temario:</td>
      <td><input type="text" name="asunto" value="" size="32" /></td>
    </tr>
    <tr valign="baseline">
      <td nowrap="nowrap" align="right">Autor:</td>
      <td><input type="text" name="autor" value="<?php echo $row_rsUserID['username']; ?>" size="32" readonly="readonly" /></td>
    </tr>
    <tr valign="baseline">
      <td nowrap="nowrap" align="right" valign="top">Mensaje:</td>
      <td><textarea name="mensaje" cols="50" rows="5"></textarea>      </td>
    </tr>
    <tr valign="baseline">
      <td nowrap="nowrap" align="right">Fecha:</td>
      <td><input name="fecha" type="text" value="<?php date("d-m-Y"); ?>" size="15" maxlength="20" /></td>
    </tr>
    <tr valign="baseline">
      <td nowrap="nowrap" align="right">&nbsp;</td>
      <td><input type="submit" value="Envia tu SMS" /></td>
    </tr>
  </table>
  <input type="hidden" name="id" value="" />
  <input type="hidden" name="MM_insert" value="form1" />
</form>
<p><a href="mp.php"><strong>Volver</strong></a></p>
Ahi corregi unas cositas, pero sigue igual. Esa es toda la web jeje.

Saludos
__________________
CabaSoft Networks
  #9 (permalink)  
Antiguo 22/07/2008, 22:09
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
Respuesta: Problema ComboBox [DW]

Holas juaniquillo

Yo aca denuevo

Sabes, acabo de probar en una pagina Totalmente en blanco, poniendo un Combobox en blanco, y un recordset limpio y funciona de lujo...

Porque sera que no en esa pagina?? Ya que necesito el formulario asi como ese

Habra algo mal en el Code?? Bueno, espero que le puedas dar una ojeada rapida a ver que tiene, que yo no pude solucionarlo x el momento.

Saludos
__________________
CabaSoft Networks
  #10 (permalink)  
Antiguo 24/07/2008, 17:05
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Respuesta: Problema ComboBox [DW]

Pues acabo de ver el problema. Esa pagina esta un poco desorganizada. Estás vaciando la consulta que hiciste arriba antes de que llegue al loop. Osea, ese código:

Código PHP:
<?php
mysql_free_result
($rsUserID);

mysql_free_result($rsUsuarios);
?>
Debe estar al final de la página, después de la última etiqueta html, osea, la </html>. De esa forma vacías la consulta después de haberla usado.

Otra cosa, espero que ésa no sea tu página completa ya que le faltan muchas etiquetas HTML, por ejemplo, el doctype, las etiquetas de 'head' y 'body', etc. Si ese es el caso te recomiendo que hagas una página nueva y pongas los elementos en orden. Me dejas saber si necesitas ayuda con eso.

Saludos.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...

Última edición por juaniquillo; 24/07/2008 a las 22:04
  #11 (permalink)  
Antiguo 24/07/2008, 19:18
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 12
Respuesta: Problema ComboBox [DW]

Muchas gracias juaniquillo

Ya lo pruebo y veo que tal me fue

Esta medio mala esa pagina, ya que la cree muy rapida, pero por miedo a errores en mis otros recordsets, no quice tocarla, pero ya esta, la creare denuevo.

Saludos y ya te digo que tal

EDITO:

Funciona PERFECTO!!!

Te agradezco muchisimo 'una vez mas' que ya fueron muchisimas! jeje

Gracias y nos leemos
__________________
CabaSoft Networks

Última edición por nicolyto77; 24/07/2008 a las 19:22 Razón: Solucion
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 04:00.