Estoy intentando añadir registros a una tabla a partir de un formulario y me da un error que no entiendo:
Este es el código que crea la base de datos y la tabla:
<?php
$link=mysql_connect("localhost","root","");
$c=mysql_query("create database turina",$link);
mysql_select_db(turina,$link);
mysql_query("create table alumnos(
matricula tinyint(5) unsigned zerofill auto_increment,
curso char,
letra char,
nombre varchar (20),
apellido1 varchar (20),
apellido2 varchar (20),
primary key (matricula)
)") or die (mysql_error($link));
?>
Este es el formulario:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en">
<head>
<title>Añadir un alumno a la base de datos</title>
</head>
<body>
<form action = postfillalumnos.php method = POST>
nombre=<input type ="text" name="vnombre">
apellido1=<input type ="text" name="vapellido1">
apellido2=<input type ="text" name="vapellido2"><br><br>
<input type="submit" value="añadir">
</body>
</html>
Y este es el fichero que recibe los datos:
<?php
$vnombre=$_POST['vnombre'];
$vapellido1=$_POST['vapellido1'];
echo"El nombre es=$vnombre<br>";
echo"El apellido es=$vapellido1";
$link=mysql_connect("localhost","root","");
$c=mysql_select_db(turina,$link);
mysql_query ("insert into alumnos(nombre) values ($vnombre)",$link) or die(mysql_error($link));
?>
Este es el resultado después de poner en el formulario pepe como nombre y gamez como apellido1:
El nombre es=pepe
El apellido es=gamezUnknown column 'pepe' in 'field list'
No sé por qué identifica nombre con pepe si he puesto vnombre en lugar de nombre. No sé de donde viene ese error.