Foros del Web » Programando para Internet » PHP »

problemas con insert y consulta de otra tabla

Estas en el tema de problemas con insert y consulta de otra tabla en el foro de PHP en Foros del Web. buenos dias a todos el problema es que la verdad no se como empezar tengo que crear lo siguiente: 1.Confeccionar un programa que muestre por ...
  #1 (permalink)  
Antiguo 12/11/2011, 18:00
 
Fecha de Ingreso: noviembre-2011
Ubicación: Paris
Mensajes: 450
Antigüedad: 12 años, 5 meses
Puntos: 7
problemas con insert y consulta de otra tabla

buenos dias a todos el problema es que la verdad no se como empezar tengo que crear lo siguiente:

1.Confeccionar un programa que muestre por pantalla los nombres de todos los cursos y al final la cantidad total de cursos.

2.Confeccionar un programa que muestre el nombre del curso, la cantidad de inscriptos y todos los inscriptos a dicho curso. Repetir esto con todos los cursos. Es decir, en la página debe aparecer algo parecido a: Nombre del curso:PHP Cantidad de inscriptos:3 Nombres: Martinez Luis - Rodriguez Pablo - Gonzalez Ana Nombre del curso:JSP Cantidad de inscriptos:2 Nombres: Hernandez Hector - Roca Marta

el problema de tener una maestra que no explica solo nos encarga las practicas y para que nosotros las hagamos espero y me puedan ayudar gracias

solo tengo esto aparte quisiera comprender el codigo pero no lo logro ;c

<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$conexion=mysql_connect("localhost","root","esme25 ") or
die("Problemas en la conexion");
mysql_select_db("phpfacil",$conexion) or
die("Problemas en la selección de la base de datos");
$registros=mysql_query("select alu.codigo as codigo,nombre,mail,codigocurso
from alumnos as alu
inner join cursos as cur on cur.codigo=alu.codigocurso",
$conexion) or
die("Problemas en el select:".mysql_error());
while ($reg=mysql_fetch_array($registros))
{
echo "Codigo:".$reg['codigo']."<br>";
echo "Nombre:".$reg['nombre']."<br>";
echo "Mail:".$reg['mail']."<br>";
echo "Curso:".$reg['codigocurso']."<br>";
echo "<hr>";
}
mysql_close($conexion);
?>
</body>
</html>
  #2 (permalink)  
Antiguo 15/11/2011, 13:02
Avatar de linuxzero  
Fecha de Ingreso: noviembre-2011
Ubicación: Argentina
Mensajes: 778
Antigüedad: 12 años, 5 meses
Puntos: 160
Respuesta: problemas con insert y consulta de otra tabla

Te escribo comentado cada linea que hace para que tengas una idea de lo que hace el php:

Código:
<?php
/**
 * Se conecta a la base de datos con los siguientes parametros:
 * 1º) "localhost" (host o ruta del servidor)
 * 2º) "root" (usuario de la base de datos)
 * 3º) "esme25" (clave de la base de datos)
 * En caso de fallar la conexion, corta la ejecucion del codigo con el metodo die() y ademas muestra  
 * un mensaje por pantalla diciendo "Problemas en la conexion"
 */
$conexion=mysql_connect("localhost","root","esme25 ") or
die("Problemas en la conexion");

/**
 * mysql_select_db: Se encarga de seleccionar la base de datos con la que se pretende trabajar
 * pasandole 2 parametros:
 * 1º) "phpfacil" (nombre de la base de datos)
 * 2º) link de conexion a la base de datos (anteriormente generado)
 * En caso de fallar la seleccion de la base de datos, corta la ejecucion del codigo con el metodo die() y ademas muestra  
 * un mensaje por pantalla diciendo "Problemas en la selección de la base de datos"
 */
mysql_select_db("phpfacil",$conexion) or
die("Problemas en la selección de la base de datos");

/**
 * mysql_query: Ejecuta la consulta sql pasada como unico parámetro.
 * guarda el resultado de la consulta en la variable $registros
 * En caso de fallar la consulta, corta la ejecucion del codigo con el metodo die() y ademas muestra  
 * un mensaje por pantalla diciendo "Problemas en el select:".mysql_error()"
 * con el metodo mysql_error() muestra el error que devolvio el mysql para una mejor depuracion
 */
$registros=mysql_query("select alu.codigo as codigo,nombre,mail,codigocurso
from alumnos as alu
inner join cursos as cur on cur.codigo=alu.codigocurso",
$conexion) or die("Problemas en el select:".mysql_error());

/**
 * mysql_fetch_array: Transforma los resultados de la consulta en un array para poder recorrerlo
 * con el while y por cada registro leido se lo coloca en la variable $reg para una mejor manipulacion
 */
while ($reg=mysql_fetch_array($registros))
{

/**
 * Por cada registro que lee del resultado, se procede a mostrar la informacion que se encuentra
 * debajo, y se accede como si fuera un vector
 * Cada posicion del vector, son los NOMBRES DE LOS CAMPOS DE LA TABLA en la que se hizo la 
 * consulta
 * EJ: En la consulta anterior realizaba la siguiente seleccion de campos: 
 * alu.codigo as codigo, nombre, mail, codigocurso from alumnos
 * Como vemos, los campos a utilizar como posiciones en el vector $reg son codigo, nombre, mail y
 * codigocurso, que son justamente los que muestra a continuacion
 */
echo "Codigo:".$reg['codigo']."<br>";
echo "Nombre:".$reg['nombre']."<br>";
echo "Mail:".$reg['mail']."<br>";
echo "Curso:".$reg['codigocurso']."<br>";

/**
 * imprime una linea horizontal (HR = Horizontal Rule)
 */
echo "<hr>";
}

/**
 * mysql_close: Cierra la conexion al mysql
 */
mysql_close($conexion);
?>
Si hay algo que falte avisame que con gusto te doy una mano ;)

Salduos!
__________________
Si todo fuera tan sencillo como un symfony cc la vida seria más fácil.
http://phpnico.wordpress.com
  #3 (permalink)  
Antiguo 16/11/2011, 00:13
 
Fecha de Ingreso: noviembre-2011
Ubicación: Paris
Mensajes: 450
Antigüedad: 12 años, 5 meses
Puntos: 7
Respuesta: problemas con insert y consulta de otra tabla

gracias hermano lo provare, espero terminarlo para mañana ya que solo tengo hasta ese dia
  #4 (permalink)  
Antiguo 16/11/2011, 05:44
Avatar de linuxzero  
Fecha de Ingreso: noviembre-2011
Ubicación: Argentina
Mensajes: 778
Antigüedad: 12 años, 5 meses
Puntos: 160
Respuesta: problemas con insert y consulta de otra tabla

Cualquier duda consultá ;)
__________________
Si todo fuera tan sencillo como un symfony cc la vida seria más fácil.
http://phpnico.wordpress.com

Etiquetas: html, insert, mysql, registro, sql, 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 03:41.