Foros del Web » Programando para Internet » PHP »

Mejor forma de manejar multples conecciones a la DB en mismo Script?

Estas en el tema de Mejor forma de manejar multples conecciones a la DB en mismo Script? en el foro de PHP en Foros del Web. Saludos y muy buenas tardes mis estimados. Es un gusto para mi saludarles, y pedir de su valiosa ayuda, ya que en este foro siempre ...
  #1 (permalink)  
Antiguo 23/01/2014, 11:51
 
Fecha de Ingreso: octubre-2008
Mensajes: 101
Antigüedad: 15 años, 6 meses
Puntos: 1
Pregunta Mejor forma de manejar multples conecciones a la DB en mismo Script?

Saludos y muy buenas tardes mis estimados.

Es un gusto para mi saludarles, y pedir de su valiosa ayuda, ya que en este foro siempre se encuentra mucho conocimiento.

Veran, quiza ya lo hayan tratado con anterioridad pero tengo una duda... La situacion es la siguiente, actualmente tengo un pequeño sistema en mi pc hecho en PHP - MySql, el cual posteriomente deseo poner en produccion y a uso de todos los demas de mi equipo.

El punto que tengo duda, es con respecto a un script ya que en ese script tengo un formulario donde hago muchas conecciones a diferentes tablas para llenar combos, por ejemplo:

1- Combo donde extraigo los responsables
2- Combo donde pongo la gerencia beneficiada
3- Combo que muestra las actividades, etc, etc.

Y pues de la forma en que yo lo hago es de la siguiente forma:
Código:
echo '<select name=id_responsable>';
		$link = mysql_connect('localhost', 'root', '');
		mysql_select_db('csa', $link);
		$query="SELECT * FROM responsables";
		$resultado = mysql_query($query);
		if ($resultado)
		while($renglon = mysql_fetch_array($resultado))
		{
		$id=$renglon['id'];
		$nombre=$renglon['nombre'];
		echo "<option value=".$id.">".$nombre."</option>\n";
		}
		mysql_close($link);
De esta forma voy llenando cada combo, e incluso tengo textbox en readonly, que lleno con informacion de lectura, para ampliar mas el detalle.

Código:
 $link = mysql_connect('localhost', 'root', '');
		      mysql_select_db('csa', $link);
			  $query="SELECT nombre FROM empresas where id =".$resultados["id_empresa"];
			  $resultado = mysql_query($query);
		      if ($resultado)
			  {
			  while($renglon = mysql_fetch_array($resultado))
			  $nombre=$renglon['nombre'];
			  echo "<input type='text' value='".$nombre."' disabled='disabled' size='14'  />"; 
			  }
			  mysql_close($link);
El punto es que siento que para cargar este script(Que seria practicamente el 80% del sistema, por que de ahi salen los demas reportes), siento que cada vez que carga este script es algo lento y no es por temas de hardware.

Ahora el punto es que quisiera me guiaran y me aconsejaran en como tal vez poder hacer un mejor diseño, quiza no sea necesario tanta coneccion... O no se de que otra forma lo han hecho ustedes con anterioridad, con el fin de respetar y no afectar el performance de la DB y responda rapidamente, ya que posteriomente todos estaran conectados y necesito que sea lo mas rapido posible.

Bueno, me despido esperando sus comentarios.

Desde ya gracias!
  #2 (permalink)  
Antiguo 23/01/2014, 18:26
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Mejor forma de manejar multples conecciones a la DB en mismo Script?

Si tus script que leen la bd se ejecutan uno tras otro sin ser llamadas ajax, no es conveniente cerrar la conexión hasta que finalice todo el script.

Es difícil hablar de performance sin conocer la estructura de tus tablas, sus índices y relaciones, y sobre todo la cantidad de información existente.

Algo que se puede comentar:
las consultas tipo $query="SELECT * FROM responsables"; consume más recursos que si sólo selecciona los campos que realmente vas a usar.

Por otra parte no comprendo donde dices "e incluso tengo textbox en readonly" ¿según tú es positivo o negativo? además, no es lo mismo readonly que disabled, y finalmente, la propiedad disabled no se usas así ( disabled='disabled')

si no algo así: <input type="text" name="ejemplo" disabled>
  #3 (permalink)  
Antiguo 23/01/2014, 18:37
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Mejor forma de manejar multples conecciones a la DB en mismo Script?

Creo que necesitaríamos ver más código para saber exatamente lo que estás haciendo y poder sugerir algo pero, en definitiva y como bien dijo ocp001a, no es conveniente tener más de una conexión en un mismo script, a menos que debas conectar a diferentes bases de datos.

Aparte, tampoco entiendo porque crear inputs que estarán deshabilitados, tanto si quieres ahorrar recursos en el servidor como en el navegador, bastaría con poner solo el nombre:

Código PHP:
Ver original
  1. // En vez de:
  2.     $nombre=$renglon['nombre'];
  3.     echo "<input type='text' value='".$nombre."' disabled='disabled' size='14'  />";
  4. // Podrías poner solo:
  5.     echo $renglon['nombre'];
  6. // Si necesitas que tenga algún estilo
  7.     echo "<span class=\"estilo\">{$renglon['nombre']}</span>";

Logicamente puedes usar span, div o el elemento HTML que prefieras.
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: forma, formulario, manejar, mysql, select, tabla
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 02:21.