PHP - Necesito ayuda en un sistema de inscripcion online

   
Vista:

Necesito ayuda en un sistema de inscripcion online

Publicado por Luis (5 intervenciones) el 04/11/2013 04:18:32
Buenas quiero que me ayuden en esto... estoy haciendo un sistema donde la gente se registra en una planilla y selecciona un curso para cursar! ahora es mi pregunta en modo "administrador" el agregara los cursos nuevos que si cocina o música y yo quiero que eso se refleje en la planilla donde el usuario se registra a los cursos....en la planilla yo puse fue una lista tipo menu que elija los cursos que yo mismo puse ahi pero quiero cambiar eso y que muestre lo que el administrador ponga como nuevos cursos...Espero que me ayuden por favor
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Necesito ayuda en un sistema de inscripcion online

Publicado por xve (5518 intervenciones) el 04/11/2013 08:18:40
Hola Luis, la verdad es que no se muy bien como ayudarte... no vemos el código, y no nos queda claro como lo tienes actualmente...

Estaria bien si nos muestra el código actual, y lo que quieres cambiar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Jesus Gabriel (12 intervenciones) el 07/11/2013 20:50:16
Lo que yo entendi Luis es que tu pusiste las categorias de manera estatica, y ahora quieres hacerlo de manera dinamica osea que el administrado las de alta desde el panel y luego se reflejen en el sitio.

en primera pues necesitas crear una tabla en tu base de datos para tus categorias

luego crearle una seccion a tu panel de control o formulario donde el administrador de de alta, de baja o edite las categorias.
estas se guardan en tu base de datos, la cual podras leer en tu select o donde quieras

oviamente no te ponemos codigo porque como dice Xve no vemos codigo, mucho menos algun error.


saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Elier (92 intervenciones) el 08/11/2013 20:22:17
crea en tu base de datos una tabla que se llame cursos que tenga una columna id (LLAVE PRIMARIA) y una columna nombre (NOT NULL y si quieres que el nombre no se pueda repetir le pones indice UNIQUE) y añades los cursos a la tabla.

Luego obtienes esos cursos de la Base de Datos y creas a lista

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
 
include_once 'conexion.php';
 
$queryCursos = "SELECT * FROM cursos";
 
$select_otag =  '<select>';
$select_etag =  '</select>';
 
$resultado = mysqli_query($conn, $queryCursos);
 
$opciones = '<option value="0">Seleccione el curso</option>';
 
if($resultado)
{
	while ($curso = mysqli_fetch_array($resultado))
	{
    	$opciones .= '<option value="'.$curso['id'].'">'.$curso['nombre'].'</option>';
	}
}
 
$lista_desplegable = $select_otag.$opciones.$select_etag;
 
echo $lista_desplegable;
 
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Luis luis5an@hotmail.com (5 intervenciones) el 08/11/2013 23:32:30
gracias esta parte si me ayudo ahora tengo una duda!....hize un formulario con clase! pero se me esta complicando un poco y volvi a hacer el formulario pero sin clases que la envia a otra pagina en php que es donde se insertan los datos a la base de datos (trabajo con mysql) pero me esta dando un error en una variable llamada mysql_query($sql,$conexion);
me podran ayudar porque es el error y como solucionarlo es en el registro cuando inserta los datos me da ese error y no inserta nada...aqui las pantallas para que vean como funciona!

este es donde envio el formulario para que agregue a la base de dato y es donde me da el error

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
	include('conex.php');
 
 
	$Nombre1	 	= $_POST['Nombre1'];
	$Nombre_2	 	= $_POST['Nombre_2'];
	$Apellido1 = $_POST['Apellido1'];
	$Apellido2 = $_POST['Apellido2'];
	$Cedula = $_POST['Cedula'];
	$Nacionalidad      = $_POST['Nacionalidad'];
	$FechaNac      = $_POST['FechaNac'];
	$Lugar_Nac = $_POST['Lugar_Nac'];
	$Religion = $_POST['Religion'];
	$Grado_Aca      = $_POST['Grado_Aca'];
	$Edad      = $_POST['Edad'];
	$Sexo = $_POST['Sexo'];
	$Estado_Civil = $_POST['Estado_Civil'];
	$Hijos      = $_POST['Hijos'];
	$Varones      = $_POST['Varones'];
	$Hembras = $_POST['Hembras'];
	$Cantid_pers = $_POST['Cantid_pers'];
	$Direccion1      = $_POST['Direccion1'];
	$Sufre_Enferm      = $_POST['Sufre_Enferm'];
	$Tratamiento_Emerg = $_POST['Tratamiento_Emerg'];
	$Telefono_Emerg = $_POST['Telefono_Emerg'];
	$Telefono_L      = $_POST['Telefono_L'];
	$Telefono_P      = $_POST['Telefono_P'];
	$Telefono_T = $_POST['Telefono_T'];
	$mail = $_POST['mail'];
	$Trabajo_Actual      = $_POST['Trabajo_Actual'];
	$Cargo     = $_POST['Cargo'];
	$Antiguedad = $_POST['Antiguedad'];
	$Como_se_entero = $_POST['Como_se_entero'];
	$idcurso      = $_POST['idcurso'];
 
 
	$sql = "INSERT INTO alumnos (Nombre1,Nombre_2,Apellido1,Apellido2,Cedula,Nacionalidad,FechaNac,Lugar_Nac,Religion,Grado_Aca,Edad,Sexo,Estado_civil,Hijos,Varones,Hembras,Cantid_pers,Direccion1,Sufre_Enferm,Tratamiento_Emerg,Telefono_L,Telefono_P,Telefono_T,mail,Trabajo_Actual,Cargo,Antiguedad,Como_se_entero,idcurso) VALUES ('".$Nombre1."','".$Nombre_2."','".$Apellido1."','".$Apellido2."','".$Cedula."','".$Nacionalidad."','".$FechaNac."','".$Lugar_Nac."','".$Religion."','".$Grado_Aca."','".$Edad."','".$Sexo."','".$Estado_Civil."','".$Hijos."','".$Varones."','".$Hembras."','".$Cantid_pers."','".$Direccion1."','".$Sufre_Enferm."','".$Tratamiento_Emerg."','".$Telefono_Emerg."','".$Telefono_L."','".$Telefono_P."','".$Telefono_T."','".$mail."','".$Trabajo_Actual."','".$Cargo."','".$Antiguedad."','".$Como_se_entero."','".$idcurso."')";
 
	mysql_query($sql,$conexion);
	echo '<center><img src="imagenes/correcto.gif"/>Informacion Almacenada Correctamente.</center>';
 ?>
 <br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
 <table width="320" height="124" border="0" align="center">
  <tr>
    <td width="69" height="61"><strong>
      <h3>&nbsp;</h3>
      <h3> <script language="javaScript">
function fEnviar(){
document.location.href = "Cursos.html";
}
  </script>
        </head>
      </h3>
    </strong></td>
    <td width="241"><h1><strong>Menu Principal</strong></h1></td>
   </tr>
  <tr>
    <td height="21">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td height="3">&nbsp;</td>
    <td><strong>
      <input type="button" name="Enviar" id="Enviar" value="Enviar" onClick="javaScript:fEnviar();" />
    </strong></td>
  </tr>
</table>

y esta es la conexion a la base de datos

1
2
3
4
5
6
7
8
9
10
]<?php
 
	$dbhost = "localhost";
	$dbuser = "root";
	$dbpass = "morada";
	$dbname = "registro_fundacion";
	$conexion = mysql_connect($dbhost, $dbuser, $dbpass) or die ("Error: En la conexion");
	mysql_select_db($dbname);
 
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Necesito ayuda en un sistema de inscripcion online

Publicado por xve (5518 intervenciones) el 09/11/2013 09:34:06
Hola Luis, exactamente que error te da?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Elier (92 intervenciones) el 11/11/2013 21:11:45
Prueba si te funciona así

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php
 
include('conex.php');
 
define("COMILLA", "'");
define("COMA", ",");
 
 
$columnas = array
(
	"Nombre1",
	"Nombre_2",
	"Apellido1",
	"Apellido2",
	"Cedula",
	"Nacionalidad",
	"FechaNac",
	"Lugar_Nac",
	"Religion",
	"Grado_Aca",
	"Edad",
	"Sexo",
	"Estado_civil",
	"Hijos",
	"Varones",
	"Hembras",
	"Cantid_pers",
	"Direccion1",
	"Sufre_Enferm",
	"Tratamiento_Emerg",
	"Telefono_L",
	"Telefono_P",
	"Telefono_T",
	"mail",
	"Trabajo_Actual",
	"Cargo",
	"Antiguedad",
	"Como_se_entero",
	"idcurso"
);
 
$cantidad_columnas = count($columnas);
 
//  Validación del Formulario
//  Es obligatorio que las columnas que se declararon NOT NUL en MYSQL tengan valor
 
$col = "";
$val = "";
for($i = 0; i < $cantidad_columnas; $i++)
{
	$columna = $columnas[$i];
 
	// solo las columnas con datos se añaden y guardan en $datos
	if (isset($_POST[$columna]))
	{
	   // Nombre de la Columna
	   $col .= $columna;
 
	   //Dato de la Columna
	   $valor = mysql_real_escape_string($_POST[$columna]);
	   $val .= COMILLA.$valor.COMILLA;
 
	   // si no es la ultima columna añadir coma
	   if ($i != ($cantidad_columnas - 1)){
		$col .= COMA;
		$val .= COMA;
	   }
	}
}
 
$cantidad_datos = count($datos);
 
$sql = "INSERT INTO alumnos ($col) "."VALUES($val)";
 
mysql_query($sql,$conexion);
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Mari Carmen (145 intervenciones) el 12/11/2013 01:01:47
Solo con fines de exploración, otra forma de hacer lo mismo que Elier.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php
include('conex.php');
$columnas = array(
	"Nombre1",
	"Nombre_2",
	"Apellido1",
	"Apellido2",
	"Cedula",
	"Nacionalidad",
	"FechaNac",
	"Lugar_Nac",
	"Religion",
	"Grado_Aca",
	"Edad",
	"Sexo",
	"Estado_civil",
	"Hijos",
	"Varones",
	"Hembras",
	"Cantid_pers",
	"Direccion1",
	"Sufre_Enferm",
	"Tratamiento_Emerg",
	"Telefono_L",
	"Telefono_P",
	"Telefono_T",
	"mail",
	"Trabajo_Actual",
	"Cargo",
	"Antiguedad",
	"Como_se_entero",
	"idcurso"
);
//Funcion para escapar los strings (esta funcion no escapa % _ esto se puede
// evitar usando prepare(), bind_param() etc. de la libreria mysqli)
function escape_mysql($str,$b,$link){return mysql_real_escape_string($str,$link);}
 
//   Validación del Formulario
$variables=array_intersect_key($_POST, array_flip( $columnas ));//Recoge los valores del POST que concuerden con los de $columnas
$variables=array_filter($variables,'strlen');//Filtra los resultados que sean "", NULL, false. Pero no 0 o "0"
array_walk($variables, 'escape_mysql',$conexion);//Filtra los valores con mysql_real_escape_string()
 
//   Preparación de las sentencias
$col=implode(", ",array_flip( $variables ));//Separa todos los valores de los indices con ,
$val="'".implode("', '",$variables)."'";//Separa todos los valores de las variables en 'var1','var2',etc
 
$sql = "INSERT INTO alumnos ($col) VALUES($val)";
mysql_query($sql,$conexion);
?>

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Luis (5 intervenciones) el 14/11/2013 00:37:25
Hola mari carmen probe lo que pusiste y no me funciono no agrega nada y no da ningun error no muestra nada practicamente solo sigue como si eso no estuviera
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Mari Carmen (145 intervenciones) el 14/11/2013 02:42:58
Lo que te interesa es la forma en la que está hecha la sentencia SQL, yo no soy muy dada al SQL pero si haces un echo de la variable $sql verás la sentencia que le envías al servidor.

Si no sabes SQL, como yo, te toca buscar arduas horas por internet a ver donde me he equivocado en la sentencia. Puedes probar a ingresar al phpmyadmin en local y ejecutar la sentencia SQL que te devuelve y desde ahí a ver que te comenta el servidor mysql de tu sentencia.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Luis (5 intervenciones) el 14/11/2013 00:36:00
Hola Elier probe lo que tu me pusiste y no me funciono se queda pensando y pensando y no agrega a la base de datos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Elier (92 intervenciones) el 14/11/2013 16:22:28
Prueba ahora después que le corregí algunos errores, elimina las partes del código que no te haga falta pues puse un formulario al final para que puedas probar que la sentencia SQL se genera correctamente. Si no quieres tener que generar las sentencias SQL puedes usar un ORM

http://propelorm.org/

http://www.doctrine-project.org/

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<?php
 
include('conex.php');
 
define("COMILLA", "'");
define("COMA", ",");
$action_page = $_SERVER['PHP_SELF'];
 
$columnas = array
(
	"Nombre1",
	"Nombre_2",
	"Apellido1",
	"Apellido2",
	"Cedula",
	"Nacionalidad",
	"FechaNac",
	"Lugar_Nac",
	"Religion",
	"Grado_Aca",
	"Edad",
	"Sexo",
	"Estado_civil",
	"Hijos",
	"Varones",
	"Hembras",
	"Cantid_pers",
	"Direccion1",
	"Sufre_Enferm",
	"Tratamiento_Emerg",
	"Telefono_L",
	"Telefono_P",
	"Telefono_T",
	"mail",
	"Trabajo_Actual",
	"Cargo",
	"Antiguedad",
	"Como_se_entero",
	"idcurso"
);
 
$cantidad_columnas = count($columnas);
 
if(isset($_POST['submit']))
{
 
//  Validación del Formulario
//  Es obligatorio que las columnas que se declararon NOT NUL en MYSQL tengan valor
 
$col = "";
$val = "";
for($i = 0; $i < $cantidad_columnas; $i++)
{
	$columna = $columnas[$i];
 
	// solo las columnas con datos se añaden y guardan en $datos
	if (isset($_POST[$columna])&&!empty($_POST[$columna]))
	{
	   // Nombre de la Columna
	   $col .= $columna;
 
	   //Dato de la Columna
	   $valor = mysql_real_escape_string($_POST[$columna]);
	   $val .= COMILLA.$valor.COMILLA;
 
	   // si no es la ultima columna añadir coma
	   if ($i != ($cantidad_columnas - 1)){
		$col .= COMA;
		$val .= COMA;
	   }
	}
}
 
$sql = "INSERT INTO alumnos ($col) "."VALUES($val)";
 
echo $sql;
mysql_query($sql,$conexion);
}
else
{
	echo "<form action=\"$action_page\" method=\"post\">";
	for ($i=0; $i < $cantidad_columnas; $i++)
	{
		echo $columnas[$i].":";
		echo "<input type=\"text\" name=\"".$columnas[$i]."\" value=\"\"]><br>";
	}
	echo "<input type=\"submit\" name=\"submit\" value=\"Enviar\">";
	echo "</form>";
}
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Luis (5 intervenciones) el 14/11/2013 21:31:40
Gracias Elier me sirvio mucho ahora ya registra sin errores gracias!!...



Ahora una pregunta mas para ya casi terminar después que ese usuario se registre llenando el formulario como hago para imprimir esos datos que el introdujo en PDF como puedo hacer eso si me podrías ayudar para terminar con mi duda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Necesito ayuda en un sistema de inscripcion online

Publicado por Elier (92 intervenciones) el 15/11/2013 16:16:08
Si el sistema tiene que generar el pdf para que el usuario lo descargue, puedes usar TCPDF

Descargalo del sitio http://sourceforge.net/projects/tcpdf/files/tcpdf_6_0_044.zip/download,

Mira los ejemplos http://www.tcpdf.org/examples/example_001.phps

Si te es muy complicado otra alternativa es

http://www.fpdf.org o también http://code.google.com/p/fpdf-5/&#8206;

Si eres tu el que va a imprimir el PDF puedes usar la version FREE de Bullzip PDF y desde el navegador le das imprimir y seleccionas la impresora de PDF.

http://www.bullzip.com/products/pdf/download.php
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar