Insertar datos con php y mysql

Helen
26 de Octubre del 2004
Hola grupo tengo una gran duda, el codigo que pongo a continuacion me llama la misma pagina cuando presiono el boton de guardar pero el problema es que necesito guardar dichos datos en una base de datos de mysql pero nose en qeu parte tengo que ponerlo o si es un script en que parte llamarlo.

Ya nose que hacer por que el tiempo se acaba.

El codigo es el siguiente:
___________________________________________________

?>
<html>
<head><title>Insertar Preguntas </title></head>
<script>
function check(){
if (document.sesion.pregunta.value == ""){
alert("Debe ingresar la pregunta");
document.sesion.pregunta.focus();
return false;
}
if (document.sesion.A.value == ""){
alert("Debe ingresar el A)");
document.sesion.A.focus();
return false;
}
if (document.sesion.B.value == ""){
alert("Debe ingresar el B)");
document.sesion.B.focus();
return false;
}
if (document.sesion.C.value == ""){
alert("Debe ingresar el C)");
document.sesion.C.focus();
return false;
}
if (document.sesion.D.value == ""){
alert("Debe ingresar el D)");
document.sesion.D.focus();
return false;
}
if (document.sesion.correcta.value == ""){
alert("Debe ingresar la respuesta correcta");
document.sesion.correcta.focus();
return false;
}
// if (document.envio.materia.selectedIndex==0){
// alert("Selecciona la materia a la que pertenece la pregunta");
// envio.materia.focus();
// return false;
// }
}
</script>
<script>
function borrar()
{
document.sesion.pregunta.value = "";
document.sesion.A.value="";
document.sesion.B.value="";
document.sesion.C.value="";
document.sesion.D.value="";
document.sesion.correcta.value="";
document.sesion.Tema.SelectedIndex==0;
}
</script>
<body bgcolor="#003366" lang=ES style='tab-interval:35.4pt' background="Flax/indexfondoluz.jpg">
<form action="<?php _SELF ?>" method="post" name="sesion" onsubmit="return check();">
<table width="100%" border="1" bgcolor="#330099" height="27" align="left">
<tr>
<td width="1%" height="32"><font color="#FFFFFF"><b><font color="#CCFFFF">Materia</font></b></font><font color="#CCFFFF"><b>:</b></font></td>
<td width="26%" height="32"> <font color="#FFFFFF"><b>
<select name="Materia">
<option>Selecciona la Materia
<option values="Base de Datos I">Base de Datos I
<option values="Base de Datos II">Base de Datos II
</select>
</b></font> </td>
<td width="6%" height="32">
<div align="right"><font color="#FFFFFF"><b> <font color="#CCFFFF">Tema:</font></b></font></div>
</td>
<td width="42%" height="32">
<select name="Tema">
<option> Selecciona el Tema
<option values="GENERALIDADES">GENERALIDADES
<option values="Introduccion a las bases de datos">Introduccion a las
Bases de Datos
<option values="Objetivos de los sistemas de bases de datos">Objetivos
de los sistemas de bases de datos
<option values="Abstraccion de Datos">Abstraccion de Datos
<option values="Lenguajes de definición de datos">Lenguajes de definición
de datos
<option values="Lenguajes de manipulacion de Datos">Lenguajes de manipulacion
de Datos
<option values="Manejador de Bases de Datos">Manejador de Bases de Datos
<option values="Administrador de Bases de Datos">Administrador de Bases
de Datos
<option values="Usuario de Base de Datos">Usuario de Base de Datos
<option values="Estructura de un sistema">Estructura de un sistema
<option values="MODELOS DE BASES DE DATOS">MODELOS DE BASES DE DATOS
<option values="Nivel Interno">Nivel Interno
<option values="Nivel Conceptual">Nivel Conceptual
<option values="Nivel Externo">Nivel Externo
<option values="Nivel Jerarquico">Nivel Jerarquico
<option values="Modelo de Red">Modelo de Red
<option values="Modelo Relacional">Modelo Relacional
<option values="Modelo Entidad-Relación">Modelo Entidad-Relación
<option values="Modelo Orientado a Objetos">Modelo Orientado a Objetos
<option values="MODELO RELACIONAL">MODELO RELACIONAL
<option values="Concepto Basico del modelo relacional">Concepto Basico
del modelo relacional
<option values="Valores de los Atributos">Valores de los Atributos
<option values="Concepto de llave">Concepto de llave
<option values="Cardinalidad">Cardinalidad
<option values="ALGEBRA RELACIONAL">ALGEBRA RELACIONAL
<option values="Union">Union
<option values="Proyección">Proyección
<option values="Selección">Selección
<option values="Productos">Productos
<option values="NORMALIZACIÓN">NORMALIZACIÓN
<option values="Primera forma normal">Primera forma normal
<option values="Segunda forma normal">Segunda forma normal
<option values="Tercera Forma Normal">Tercera Forma Normal
<option values="Cuarta forma normal">Cuarta forma normal
<option values="Quinta forma normal">Quinta forma normal
<option values="FUNDAMENTOS PARA EL DISEÑO DE BASES DE DATOS">FUNDAMENTOS
PARA EL DISEÑO DE BASES DE DATOS
<option values="Finalidad del diseño">Finalidad del diseño
<option values="Riesgos en el diseño">Riesgos en el diseño
<option values="Diseño físico">Diseño físico
<option values="Formularios">Formularios
<option values="Informes">Informes
<option values="ACCESO A LOS DATOS">ACCESO A LOS DATOS
<option values="Indexación">Indexación
<option values="Archivos indexados">Archivos indexados
<option values="Claves multiples">Claves multiples
<option values="Ordenar">Ordenar
<option values="Sql">Sql
<option values="Lenguajes Relacionales comerciales">Lenguajes Relacionales
comerciales
<option values="Archivos Ordenados">Archivos Ordenados
<option values="Indice y Orden">Indice y Orden
<option values="Proyecto">Proyecto
</select>
</td>
<td height="32" width="7%">
<div align="right"><font color="#FFFFFF"><b><font color="#CCFFFF"></font></b></font>
<font color="#FFFFFF"><b><font color="#CCFFFF">Unidad:</font></b></font></div>
</td>
<td width="18%" height="32">
<select name="Unidad">
<option>Selecciona la Unidad
<option values="Unidad I">Unidad I
<option values="Unidad II">Unidad II
<option values="Unidad III">Unidad III
<option values="Unidad IV">Unidad IV
<option values="Unidad V">Unidad V
<option values="Unidad VI">Unidad VI
<option values="Unidad VII">Unidad VII
<option values="Unidad VIII">Unidad VIII
</select>
</td>
</tr>
</table>
<p>&nbsp;</p>
<p>&nbsp;</p>
<table width="72%" border="5" cellspacing="2" cellpadding="2" align="center">
<tr>
<td width="15%">
<div align="center"><font color="#CCFFFF"><b>Pregunta:</b></font></div>
</td>
<td colspan="3"><font color="#FFFFFF" face="Times New Roman, Times, serif">
<textarea name="pregunta" colns="37" cols="37"></textarea>
</font> <font color="#FFFFFF" face="Times New Roman, Times, serif">
</font><font color="#FFFFFF" face="Times New Roman, Times, serif">
</font></td>
</tr>
<tr>
<td colspan="4" height="20">
<div align="center"><font color="#FFFFFF" face="Times New Roman, Times, serif"><b><font size="3" color="#CCFFFF">Posibles
Respuestas</font></b></font></div>
</td>
</tr>
<tr>
<td width="15%">
<div align="right"><font color="#CCFFFF"><b></b></font><font color="#CCFFFF"><b><font face="Times New Roman, Times, serif">A)</font></b></font></div>
</td>
<td>
<div align="left"><font face="Times New Roman, Times, serif" color="#FFFFFF">
<textarea name="A"></textarea>
</font></div>
</td>
<td width="7%">
<div align="right"><font color="#CCFFFF"><b><font face="Times New Roman, Times, serif">B)</font></b></font></div>
</td>
<td width="42%">
<div align="left"><font face="Times New Roman, Times, serif" color="#FFFFFF">
<textarea name="B"></textarea>
</font><font color="#CCFFFF"><b></b></font></div>
</td>
</tr>
<tr>
<td width="15%">
<div align="right"><font color="#CCFFFF"><b></b></font><font color="#CCFFFF"><b><font face="Times New Roman, Times, serif">C)</font></b></font></div>
</td>
<td>
<div align="left">
<textarea name="C"></textarea>
</div>
</td>
<td width="7%">
<div align="right"><font color="#CCFFFF"><b><font face="Times New Roman, Times, serif">D)</font></b></font></div>
</td>
<td width="42%">
<div align="left"><font face="Times New Roman, Times, serif" color="#FFFFFF">
</font><font face="Times New Roman, Times, serif" color="#FFFFFF">
<textarea name="D"></textarea>
</font><font color="#CCFFFF"><b></b></font></div>
</td>
</tr>
<tr>
<td colspan="2" height="34">
<div align="right">
<p><font color="#CCFFFF"><b>Respuesta</b></font><font color="#CCFFFF"><b>
Correcta:</b></font></p>
</div>
</td>
<td colspan="2" height="34">
<input type="text" name="correcta" size="5" maxlength="4">
</td>
</tr>
</table>
<p>&nbsp;</p>
<table width="50%" border="1" align="center">
<tr>
<td width="30%">
<div align="center">
<input type="submit" name="Submit2" value="Guardar"">
</div>
</td>
<td width="50%">
<div align="left">
<input type="radio" name="raborrarpregunta" value="radiobutton" OnClick="borrar();">
<font color="#CCFFFF"><b> Borrar Pregunta </b></font></div>
</td>
<td width="30%">
<div align="center">
<input type="reset" value="Borrar Todo" name="reset">
</div>
</td>
</tr>
</table>
</form>
</body>
</html>

____________________________________________________________

y el codigo para insertar es el siguiente:

_____________________________________________________

<html>
<head>
<TITLE>RedactarExamen.php</TITLE>
</head>
<body>
<?php
$materia=$_POST['Materia'];
$tema=$_POST['Tema'];
$unidad=$_POST['Unidad'];
$preg=$_POST['pregunta'];
$A=$_POST['A'];
$B=$_POST['B'];
$C=$_POST['C'];
$D=$_POST['D'];
$correcta=$_POST['correcta'];
mysql_connect("localhost", "root")or die("Ocurrio una falla en la coneccion ¡intentelo mas tarde!");
$base="BD";
$tabla="preguntas";
mysql_db_query($base,"insert into $tabla values ('$Unidad','$materia','$tema','$preg','$A','$B','$C','$D','$correcta')");
mysql_close();
?>
<h1><div align="center">Datos Registrados</div></h1>
<div align="center"><a href="LeerPreguntas.php">Visualizar el contenido de la base</a></div>
<div align="center"><a href="borrar1.php">Borrar un registro</a></center><br>
</div>
</body>
</html>
____________________________________________

Porfavor ayudenme, ya nose que hacer.

Gracias por todo.


Daniel Ochoa
26 de Octubre del 2004
Creo que esto te ayudara
este es el formulario en donde ingresaras los datos, aqui solo muestro dos campos pero tu puedes manejar los que necesites

<html>
<head>
<title>Alta de Usuarios</title>
</head>
<body>
<H1>Creación de Usuarios</H1>
<FORM ACTION="guardar_usuario.php">
<TABLE>
<TR>
<TD>Nombre:</TD>
<TD><INPUT TYPE="text" NAME="Nombre" SIZE="20" MAXLENGTH="30"></TD>
</TR>
<TR>
<TD>Clave:</TD>
<TD><INPUT TYPE="text" NAME="Clave" SIZE="20" MAXLENGTH="30"></TD>
</TR>
<TR>
<TD>Tipo de Usuario </TD>
<TD> <select name="T_Usuario" size="1" id="T_Usuario">
<option>Cliente</option>
<option>Administrador</option>
</select></TD>
</TR>
</TABLE>
<INPUT TYPE="submit" NAME="accion" VALUE="Grabar">
</FORM>
<hr>
<?php
include("mod_conexion.php");
$link=Conectarse();
$result=mysql_query("select * from usuarios",$link);
?>
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR><TD>&nbsp;<B>Nombre</B></TD> <TD>&nbsp;<B>Clave</B>&nbsp;</TD><TD>&nbsp;<B>Tipo de Usuario</B>&nbsp;</TD></TR>
<?php

while($row = mysql_fetch_array($result)) {
printf("<tr><td>&nbsp;%s</td> <td>&nbsp;%s&nbsp;</td> <td>&nbsp;%s&nbsp;</td></tr>", $row["Nombre"], $row["Clave"], $row["T_Usuario"]);
}
mysql_free_result($result);
mysql_close($link);
?>
</table>
</body>
</html>

Este es el modulo que recibe los datos y los guarda el la base y vuelve a cargar la pagina de donde provienes esos datos

<?php
include("Mod_conexion.php");
$link=Conectarse();
//Nombre de la variables que viene del formulario
$Nombre=$_GET['Nombre'];
$Clave=$_GET['Clave'];
$T_Usuario=$_GET['T_Usuario'];
//guardo los datos en mi base
mysql_query("insert into usuarios (Nombre,Clave, T_Usuario) values ('$Nombre','$Clave','$T_Usuario')",$link);
//cargo la pagina en donde ingrese mis datos
header("Location: agrega_usuario.php");
?>

el mejor consejo que te puedo dar es que dividas tu problema y que hagas una sola cosa a la vez, veo tu codigo muy revuelto y presiento que cada vez que lo ves o buscas el problema te ha de doler la cabeza. cualquier cosas hechame un mail.

Saludos Daniel Ochoa

Helen
26 de Octubre del 2004
Hola la verdad no entiendo que tratas de hacer en la en esta parte del primer bloque de codigo:

<?php
include("mod_conexion.php");
$link=Conectarse();
$result=mysql_query("select * from usuarios",$link);
?>
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR><TD>&nbsp;<B>Nombre</B></TD> <TD>&nbsp;<B>Clave</B>&nbsp;</TD><TD>&nbsp;<B>Tipo de Usuario</B>&nbsp;</TD></TR>
<?php

while($row = mysql_fetch_array($result)) {
printf("<tr><td>&nbsp;%s</td> <td>&nbsp;%s&nbsp;</td> <td>&nbsp;%s&nbsp;</td></tr>", $row["Nombre"], $row["Clave"], $row["T_Usuario"]);
}
mysql_free_result($result);
mysql_close($link);
?>
</table>
</body>
</html>

y a continuacion el de insertar como se llama......?

OK gracias.
Helen

Daniel Ochoa
26 de Octubre del 2004
Lo que hago cargo los datos que se encuentran en la base de datos, cada vez que ingreso un nuevo dato la tabla se carga y muestra el nuevo dato ingresado esto se hace para ver que efectivamente los datos ingresados estan entrando ala BD. Esta parte la puedes omitor si lo prefieres o te confunde.

<?php
//llamo al modulo que conecta mi BD
include("mod_conexion.php");
$link=Conectarse();
//Selecciono la tabla que utilizare
$result=mysql_query("select * from usuarios",$link);
?>
//Creo una tabla
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR><TD>&nbsp;<B>Nombre</B></TD> <TD>&nbsp;<B>Clave</B>&nbsp;</TD><TD>&nbsp;<B>Tipo de Usuario</B>&nbsp;</TD></TR>
<?php
//Recorro toda la tabla para estraer los datos de la tabla y genero los renglones que me sean necesarios para mostrar todos.
while($row = mysql_fetch_array($result)) {
printf("<tr><td>&nbsp;%s</td> <td>&nbsp;%s&nbsp;</td> <td>&nbsp;%s&nbsp;</td></tr>", $row["Nombre"], $row["Clave"], $row["T_Usuario"]);
}
//Li9bero mi variable
mysql_free_result($result);
//Cierro mi BD
mysql_close($link);
?>


Saludos Daniel Ochoa

Helen
26 de Octubre del 2004
Hola Dany

Creo que la parte que me explicaste ya funciona perfectamente ahora solo necesito saber si se puede hacer que al tiempo de dar click en el boton de Guardar no se actualizen los combos o select´s por que ves que se actualiza automaticamente todo.

Necesito que los valores que seleccione en los select se queden fijos y se borre lo que tengo en los cuadros de text y textarea.

Se puede hace...?

De verdad te doy las gracias por todo el tiempo que dedicaste a mi problema me has sacado de un gran apuro.

Gracias por todo.

Saludos.................. "Helen"


Epalomo
26 de Octubre del 2004
Hola, soy nuevo en estos rollos pero espero puedan orientarme..
tengo 2 dudas muy grandes:
1. el modulo que recibe datos se encuentra dentro del primero donde pido los datos???
2.en la instrucción:
<?php
include("Mod_conexion.php");
$link=Conectarse(); <---- que significa esto??
espero puedas orientarme al respecto..

saludos,, y gracias de antemano--

cas
26 de Octubre del 2004
no me inserta datos grandes como lo son los blob