Amigo Claudio, este es mi script y no sé dónde debería poner esa consulta q me pasaste, podrías ayudarme más un poco?
formulario.php
Código PHP:
<html>
<head>
<title></title>
</head>
<body>
<!-- creamos un formulario en el que recogeremos los valores
a añadir a la base de datos jugadores
utilizaremos los mismos nombres de variables que en aquel
- por razones de comodidad- anteponiendoles p_ -->
<form name="altas" method=POST action="reg_jugadores.php">
<table bgcolor="#EEEEEE" align=center border=1>
<td align="right">Nombre : </td>
<td align="left"> <input type="text" name="p_v1" value="" size=20></td><tr>
<td align="right">Primer apellido : </td>
<td align="left"> <input type="text" name="p_v2" value="" size=15></td><tr>
<td align="right">Segundo apellido : </td>
<td align="left"> <input type="text" name="p_v3" value="" size=15></td><tr>
<td align="right">Seudónimo : </td>
<td align="left"> <input type="text" name="p_v4" value="" size=15></td><tr>
<td align="right">Fecha de nacimiento: </td>
<!-- para evitar fechas de nacimiento incorrectas
utilizamos la opción select para asignarles valores
y recogemos en un array de indices 0, 1 y 2
los valores respectivos de año, mes y día
con el ánimo de mantener la misma secuencia
con la que MySQL registrará estos datos -->
<td align="left"> <select name="p_v5[2]">
<? for ($i=1;$i<32;$i++){
echo "<option>$i</option>";
}
?>
</select> de
<select name="p_v5[1]">
<? for ($i=1;$i<13;$i++){
echo "<option>$i</option>";
}
?>
</select> de
<select name="p_v5[0]">
<? for ($i=1901;$i<2001;$i++){
echo "<option>$i</option>";
}
?>
</td><tr>
<td align="right">Ciudad : </td>
<td align="left"> <input type="text" name="p_v6" value="" size=20></td><tr>
<td align="right">País : </td>
<td align="left"> <input type="text" name="p_v7" value="" size=20></td><tr>
<!-- la opción posición la activamos mediante un SELECT MULTIPLE
que permite visualizar las OPCIONES DE posiciones
POR EL MISMO ORDEN EN QUE FUERON DEFINIDAS
EN LA OPCION SET DE LA BASE DE DATOS
A cada una de las opciones les asignamos como valor
una POTENCIA DE DOS empezando por
2 elevado 0, 2 elevado 1, 2 elevado 2, etc.
la finalidad de esta estrategia es permitir
que en el formulario de ALTAS
se puedan sumar estos valores y que esa suma
se el valor decimal equivalente al valor binario
de las opciones seleccionadas
El array p_v9 recogerá con indices correlativos
a partir de 0, unicamente los valores de
AQUELLAS OPCIONES QUE HAN SIDO SELECCIONADAS -->
<td align="right">Posición:<br>
(<i>Si juega en varias posiciones,<br>
podemos seleccionarlas pulsando con<br>
el mouse encima de cada una de ellas<br>
con la tecla <b>Ctrl</b> presionada</i>)</td>
<td align="left"> <SELECT MULTIPLE name=p_v8[] SIZE=4>
<option value=1>Arquero</option>
<option value=2>Defensa</option>
<option value=4>Mediocampista</option>
<option value=8>Delantero</option>
</select>
</td><tr>
<td align="right">Club actual : </td>
<td align="left"> <input type="text" name="p_v9" value="" size=20></td><tr>
<!--colocamos los botones de enviar y borrar -->
<td align=center><input type=submit value="Enviar"></td>
<td align=center><input type=reset value="Borrar"></td>
</table>
</body>
</html>
reg_jugadores.php
Código PHP:
<html>
<head>
<title>título</title>
</head>
<body>
<?
# recogemos en una variable el nombre de BASE DE DATOS
$base="db";
# recogemos en una variable el nombre de la TABLA
$tabla="tabla";
# recoger y adaptar las variables pasadas desde el formulario
$v1=$p_v1;
$v2=$p_v2;
$v3=$p_v3;
$v4=$p_v4;
# recogemos la cadena fecha en formato AAAA-MM-DD
# para ello encadenamos los valores recogidos del formulario
# año ($p_v5[0]) mes ($p_v5[1]) y día ($p_v5[2])
# incluyendo los separadores de fechas (-)
# y los recogemos en la variable $v5
$v5=$p_v5[0]."-".$p_v5[1]."-".$p_v5[2];
# el truco de asignar en el formulario valores 1,2,4,8,16,32 a las opciones de idioma
# nos permite sumarlos aquí para obtener el valor conjunto
# aqui se suman todos los valores de la matriz pasada desde el formulario
$v6=$p_v6;
$v7=$p_v7;
{
$v8+=$valor;
};
$v9=$p_v9;
# establecemos la conexion con el servidor
$conexion=mysql_connect("localhost","root","contraseña");
#asiganamos la conexión a una base de datos determinada
mysql_select_db($base,$conexion);
# AÑADIMOS EL NUEVO REGISTRO
mysql_query("INSERT $tabla (Nombre,Apellido1,Apellido2,Nick,Nacimiento,Ciudad,Pais,Posicion,Club) VALUES ('$v1','$v2','$v3','$v4','$v5','$v6','$v7',$v8,'$v9')",$conexion);
#comprobamos el resultado de la insercion
# el error CERO significa NO ERROR
# el error 1062 significa Clave duplicada
# en otros errores forzamos a que nos ponga el número de error
# y el significado de ese error (aunque sea en ingles)....
if (mysql_errno($conexion)==0){echo "<h2>Registro Añadido</b></H2>";
echo $v1."<br>";
echo $v2."<br>";
echo $v3."<br>";
echo $v4."/".$mes."/".$ano."<br>";
echo $v5."<br>";
echo $v6."<br>";
echo $v7."<br>";
echo $v8."<br>";
echo $v9."<br>";
echo "<a href=consulta_jugadores.php><b>Vea todos los jugadores</b></a>";
}else{
if (mysql_errno($conexion)==1062){echo "<h2>No ha podido añadirse el registro</h2>";
}else{
$numerror=mysql_errno($conexion);
$descrerror=mysql_error($conexion);
echo "Se ha producido un error nº $numerror que corresponde a: $descrerror <br>";
}
}
# cerramos la conexion
mysql_close();
?>
</body>
</html>
Y espero q les sirva a otros