Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/07/2013, 11:00
Avatar de guardarmicorreo
guardarmicorreo
 
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: Error al llenar un combobox con datos de una DB !!!

Cita:
Iniciado por KATHYU Ver Mensaje
Buenas, tengo una duda fijense que deseo cargar un combobox con unos datos de una DB, y tengo el codigo siguiente:

Código:
<?php
$server     = 'localhost'; //servidor
$username   = 'root'; //usuario de la base de datos
$password   = ''; //password del usuario de la base de datos
$database   = 'kosys'; //nombre de la base de datos
 
$c = @new mysqli($server, $username, $password, $database);
 
if ($c->connect_error) //verificamos si hubo un error al conectar, recuerden que pusimos el @ para evitarlo
{
    die('Error de conexión: ' . $conexion->connect_error); //si hay un error termina la aplicación y mostramos el error
}
 
$sql="SELECT * from rubros order by id";
$result = $c->query($sql); //usamos la conexion para dar un resultado a la variable
 
if ($result->num_rows > 0) //si la variable tiene al menos 1 fila entonces seguimos con el codigo
{
    $combobit="";
    while ($row = $result->fetch_array(MYSQLI_ASSOC)) 
    {
        $combobit .=" <option value='".$row['id']."'>".$row['nombre']."</option>"; //concatenamos el los options para luego ser insertado en el HTML
    }
}
else
{
    echo "No hubo resultados";
}

?>
<html>
<head>
<title>Llenar un Combobox/Select con registros de una Tabla</title>
<link href="contactos.css" rel="stylesheet" type="text/css" />
</head>
<body>
   <select name="estado">
       <?php echo $combobit; ?>
   </select>
</body>
</html>
El resultado es el deseado, pero ese es un ejemplo que consegui para hacer mi sistema, y como estoy usando XAJAX cuando pongo el codigo me da un error de



Y no continua, ya he buscado mucho pero no encuentro que mas hacer, he cambiado variables, coneciones pero dice que necesito un espacion en blanco ????

El codigo mio es el siguiente:


Código:
function registro() 
	{
		include("conexion.php");   
		mysql_select_db("kosys", $c);
				
	$sql="SELECT * from rubros order by id";   <== Aca hago el select !!!!
		$result = $c->mysql_query($sql); <== El error lo da en esta linea !!!
		if ($result->num_rows > 0) { 
		$combobit="";
		while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
        $combobit .=" <option value='".$row['id']."'>".$row['nombre']."</option>";
			}
		}
		else {
			echo "No hubo resultados";
		}
	
		$datos = "
		<table width='900px' height='225px' align='left'>
      <tr>
        <td>
          <fieldset>
            <legend>
              <font color='#000000' style='font-family: Comic Sans MS;'>
                ..:: Registro Nuevo Producto ::..
              </font>
            </legend>
            <br/>
            <form method='get' action='' name='admin' id='admin' >
              <table width='100%'>
                <tr>
                  <td>
                    <b>Nombre:
	</b><input type='text' name='nombre' size='50' maxlenght='100' class='caja' style='padding: 0.3em;'/> <br>
                  </td>
				  <td>
                    <b>Descripcion:
		</b><input type='text' name='descripcion' size='50' maxlenght='200' class='caja' style='padding: 0.3em;'/> <br>
                  </td>
                </tr>
                <tr>
                  <td>
                    <b>Rubro:
	<select name='rubro' class='caja'> 
	  echo $combobit;    <== Aca quiero que lo imprima !!!!
	</select>
                  </td>
                  <td>
                    <b>NIT:</b><br/>
                    <input type='text' name='nit' size='20' maxlenght='20' class='caja' style='padding: 0.3em;'/><br><br>
                  </td>
                </tr>
                <tr>
                  <td>
                    <b>Tel&eacute;fono:</b><br/>
                    <input type='text' name='tel' size='20' maxlenght='9' class='caja' style='padding: 0.3em;'/>
                  </td>
                  <td>
                    <b>Codigo UGB:</b><br/>
                    <input type='text' name='ugb' size='10' maxlenght='10' class='caja' style='padding: 0.3em;'/><br><br>
                  </td>
                </tr>
                
				<tr>
                  <td align='center'><br/>
                    <input type='button' value='Registrar' onclick=\"xajax_insert_alumno(xajax.getFormValues('admin'))\" name='registrar' style='padding:0.3em;'/>
                    <input type='reset' value='Limpiar' name='limpiar' style='padding:0.3em;'/>
                    <input type='button' value='Cancelar' onclick='xajax_inicio()' name='cancelar' style='padding:0.3em;'/><br><br>
                  </td>
                </tr>
              </table>
            </form>
          </fieldset>
        </td>
      </tr>
		</table>
	";
	$res = new xajaxResponse('ISO-8859-1');
	$res->addAssign("contenido","innerHTML",$datos);
	return $res->getXML();
	}
Ya he buscado y nada espero me ayuden por favor Creen que sea algo que no se pueda solucionar o me aconsejan dejar de usar xajax ?? ya que creo que eso es lo que no deja que el combo se llene como debe de ser.

El sistema es para inventarios (es pequeño) estoy en el inicio necesito hacer el carrito de compras y si xajax me dara problemas no se si seguir con el ustedes que recomiendan ???

Puedo sibirles el proyecto si asi lo desean !!!

Gracias desde ya
¿el último código es una función o un método por estar dentro de un objeto?

si no es un método ¿cómo instancias el objeto para que $c tenga algún valor?