Ver Mensaje Individual
  #5 (permalink)  
Antiguo 10/01/2015, 12:15
Avatar de fede5426
fede5426
 
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 11 meses
Puntos: 208
Respuesta: Inicios con PHP

A ver, vamos a hacerla mas corta porque si estas aprendiendo, lo que escribio penhova es algo extenso y te vas a marear jaja

En el index solo deberia estar el formulario, esta bien como lo trajiste, pero la consulta deberias hacerla en otro archivo.

Deberian quedar 3 archivos, algo asi:

index.php

Código PHP:
<body>
   <?php include("formularios/form1.html"); ?>
</body>
form1.html

Código HTML:
<form method="post" action="confirmar.php">
Ingrese nombre:
<input type="text" name="nombre"/><br>
Ingrese mail:
<input type="text" name="mail"/><br>
Seleccione el curso:
<select name="codigocurso">
<option value="1">PHP</option>
<option value="2">ASP</option>
<option value="3">JSP</option>
</select>
<br>
<input type="submit" value="Registrar"/>
</form> 
No es necesario que sea php, el formulario es html puro.
El tercero es donde ejecutas la consulta y confirmas si se registro correctamente o no:

confirmar.php

Código PHP:

//realizamos la conexión con la base de datos

$host="localhost";
$user="root";
$pass="";
$db="base1";

$conexionmysqli_connect($host,$user,$pass,$db) or die("No se pudo conectar con la base de datos");


//traemos por POST lo que escribas en el formulario y lo almacenamos en variables

$nombre=$_POST['nombre'];
$mail=$_POST['mail'];
$curso=$_POST['codigocurso'];


//realizamos la consulta

$consulta="INSERT INTO alumnos(nombre,mail,codigocurso) VALUES ('$nombre','$mail','$codigocurso')";

$resultado=mysqli_query($conexion$consulta) or die (mysql_error());


//comprobamos si se registro correctamente con un if

if ($resultado){//si la consulta se ejecuto correctamente
   
echo "Se ha registrado correctamente"//mensaje de confirmacion
   
header("Location: ../index.php"); //redireccion al index
}

else{ 
//sino...
   
echo "Error al registrarse"//mensaje de error
   
header("Location: ../index.php"); //redireccion al index


Intenta poniendolo asi, saludos.

[edito]
PD:

Cita:
2-El input con value="registrar" es el que se encarga de enviar los datos que el usuario subio, como vos no le escribiste un "name", el script no tiene idea de donde sacar los datos, al ultimo input con type="submit" agregale esto: name="submit". No tiene que llamarse submit en el name, le podes escribir lo que queres.
El script saca los datos del "ACTION" del formulario, no del name del boton.. Con que tenga type="submit" es suficiente.

Cita:
4-estas usando mysql_connect, mysql_query. NO LO USES, estas funciones traen muchas vulnerabilidades de seguridad, y estan depreciadas. la forma actual y mucho mas segura de trabajar con base de datos con php es usando mysqli, o PDO.
Totalmente de acuerdo, aprende mysqli.

Última edición por fede5426; 10/01/2015 a las 12:23