Foros del Web » Programando para Internet » PHP »

insertar datos a base de datos

Estas en el tema de insertar datos a base de datos en el foro de PHP en Foros del Web. Hola es que hice este php pero no me agrega a la base de datos los datos que le puse por que ? como le ...
  #1 (permalink)  
Antiguo 29/05/2007, 09:28
 
Fecha de Ingreso: enero-2005
Mensajes: 386
Antigüedad: 19 años, 3 meses
Puntos: 3
insertar datos a base de datos

Hola es que hice este php pero no me agrega a la base de datos los datos que le puse por que ?

como le puedo poner un if en caso de que agrego que diga agregado y si no no agregado miren este es mi codigo

altatitulado.php

<?php
include("config.php");


$usuario=$_POST["usuario"];
$contraseña=$_POST["contraseña"];
$nombre=$_POST["nombre"];
$especialidad=$_POST["especialidad"];
$email=$_POST["email"];
$edad=$_POST["edad"];
$semestre=$_POST["semestre"];
$sexo=$_POST["sexo"];
$nacimiento=$_POST["nacimiento"];
$domicilio=$_POST["domicilio"];
$telefono=$_POST["telefono"];

$query = "INSERT INTO tutorado (usuario,contraseña,nombre,especialidad,email,edad ,semestre,sexo,nacimiento,domicilio,telefono,) VALUES ('$usuario','$contraseña','$nombre','$especialidad ','$email','$edad','$semestre','$sexo','$nacimient o','$domicilio','$telefono')";
mysql_query($query);

mysql_close($conecta);

?>

<html>
<head>
<title></title>
</head>
<body>

<form method="POST" action="altatutorado.php">
Numero de control:<input type="text" name="usuario" id="usuario" size="9"><br/>
contraseña:<input type="text" name="contraseña" id="contraseña" size="10"><br/>
Nombre Completo:<input type="text" name="nombre" id="nombre" size="50"><br/>
Especialidad:<input type="text" name="especialidad" id="especialidad" size="15"><br/>
Email:<input type="text" name="email" id="email" size="35"><br/>
Edad:<input type="text" name="edad" id="edad" size="2"><br/>
Semestre:<input type="text" name="semestre" id="semestre" size="2"><br/>
Sexo:<input type="text" name="sexo" id="sexo" size="1"><br/>
Nacimiento:<input type="text" name="nacimiento" id="nacimiento" size="6"><br/>
Domicilio: <textarea rows="9" name="domicilio" id="domicilio" cols="50"></textarea><br/>
Telefono:<input type="text" name="telefono" id="telefono" size="10"><br/>
<input type="submit" value="Enviar" name="enviar"><br/>

</form>
</body>
</html>
  #2 (permalink)  
Antiguo 29/05/2007, 09:35
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
Re: insertar datos a base de datos

Hola, creo que el problema es porque te falta seleccionar la base de datos
Código PHP:
//por ejemplo
$conn=mysql_connect("localhost","usuario","password");
mysql_select_db("tu base de datos",$conn);
$query "INSERT INTO tutorado (usuario,contraseña,nombre,especialidad,email,edad ,semestre,sexo,nacimiento,domicilio,telefono,) VALUES ('$usuario','$contraseña','$nombre','$especialidad ','$email','$edad','$semestre','$sexo','$nacimient o','$domicilio','$telefono')";
mysql_query($query,$conn); 
Otro detalle:
la variable $contraseña cambiale el nombre o sacale la ñ.
y la variable $nacimiento en el query esta asi: $nacimient o , es decir la o esta separada.
Comentanos como te fue.
Saludos.
__________________
->Aprender es un proceso que incluye el error..

Última edición por cala932; 29/05/2007 a las 09:41
  #3 (permalink)  
Antiguo 29/05/2007, 09:41
Avatar de ebe
ebe
 
Fecha de Ingreso: marzo-2004
Ubicación: Guatemala
Mensajes: 363
Antigüedad: 20 años, 1 mes
Puntos: 11
Re: insertar datos a base de datos

prueba de esta forma:


<?php
$query = "INSERT INTO tutorado (usuario,contraseña,nombre,especialidad,email,edad ,semestre,sexo,nacimiento,domicilio,telefono,) VALUES ('".$usuario."','".$contraseña."','".$nombre."','" .$especialidad." ','".$email."','".$edad."','".$semestre."','".$sex o."','".$nacimiento."','".$domicilio."','".$telefo no."')";

if( mysql_query($query) ){
//header redireccionando a otra pagina donde les informas que si se inserto. o un echo
echo('se inserto');
}else{
// echo mysql_error();
echo('no se inserto la info.');
exit;
}

?>


básicamente podría ser así, de aqui en adelante tu podrias cambiar y ajustarlo a tu lógica o necesidad.


también si te esta dando algún error es bueno que lo incluyas en tu mensaje.

un saludo.
__________________
http://dev.wsnetcorp.com

Última edición por ebe; 29/05/2007 a las 09:48
  #4 (permalink)  
Antiguo 29/05/2007, 09:51
 
Fecha de Ingreso: septiembre-2003
Ubicación: lima
Mensajes: 378
Antigüedad: 20 años, 7 meses
Puntos: 0
Re: insertar datos a base de datos

Aparentemente esta bien tu sentencia pero por siaca ponle mysql_error(), para ver si te vota algun error, ahi tienes el ejemplo y para saber si las filas fueron agregadas puedes utilizar mysql_affected_rows() tienes mas explicacion acerca de esta funcion en la pagina de php.net

$Result=mysql_query($query) or die (mysql_error());
$filasafectadas=mysql_affected_rows();
if ($filasafectadas==1){
echo "Agregado";
}else
echo "No Agregado";
}

Suerte!!
  #5 (permalink)  
Antiguo 29/05/2007, 09:57
 
Fecha de Ingreso: enero-2005
Mensajes: 386
Antigüedad: 19 años, 3 meses
Puntos: 3
Re: insertar datos a base de datos

mira lo cambie asi pero no agrega a la base :(

altatutorado.php

<?php
include("config.php");


$usuario=$_POST["usuario"];
$contrasena=$_POST["contrasena"];
$nombre=$_POST["nombre"];
$especialidad=$_POST["especialidad"];
$email=$_POST["email"];
$edad=$_POST["edad"];
$semestre=$_POST["semestre"];
$sexo=$_POST["sexo"];
$nacimiento=$_POST["nacimiento"];
$domicilio=$_POST["domicilio"];
$telefono=$_POST["telefono"];

$query = "INSERT INTO tutorado (usuario,contrasena,nombre,especialidad,email,edad ,semestre,sexo,nacimiento,domicilio,telefono,) VALUES ('$usuario','$contrasena','$nombre','$especialidad ','$email','$edad','$semestre','$sexo','$nacimient o','$domicilio','$telefono')";
mysql_query($query,$conecta);

mysql_close($conecta);

?>

altatitulado.html

<html>
<head>
<title></title>
</head>
<body>

<form method="POST" action="altatutorado.php">
Numero de control:<input type="text" name="usuario" id="usuario" size="9"><br/>
contraseña:<input type="text" name="contrasena" id="contrasena" size="10"><br/>
Nombre Completo:<input type="text" name="nombre" id="nombre" size="50"><br/>
Especialidad:<input type="text" name="especialidad" id="especialidad" size="15"><br/>
Email:<input type="text" name="email" id="email" size="35"><br/>
Edad:<input type="text" name="edad" id="edad" size="2"><br/>
Semestre:<input type="text" name="semestre" id="semestre" size="2"><br/>
Sexo:<input type="text" name="sexo" id="sexo" size="1"><br/>
Nacimiento:<input type="text" name="nacimiento" id="nacimiento" size="6"><br/>
Domicilio: <textarea rows="9" name="domicilio" id="domicilio" cols="50"></textarea><br/>
Telefono:<input type="text" name="telefono" id="telefono" size="10"><br/>
<input type="submit" value="Enviar" name="enviar"><br/>

</form>
</body>
</html>

config.php
<?php

$dbhost="localhost";
$dbuser="base";
$dbpass="base";
$db="base";

$conecta = mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($db,$conecta);

?>
  #6 (permalink)  
Antiguo 29/05/2007, 16:57
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
Re: insertar datos a base de datos

Hola, te convendria armar una funcion de conexion y guardarla en el config.php y luego desde tus scripts invocarla, me parece que es ese el problema, si te fijas puedes hacer un echo"" de la variable $conecta en el script altatutorado, seguro que esta vacia. Para probar lo que te digo, primero coloca directamente en el scritp donde realizas la insercion a la base (altatutorado.php) los datos de la conexion esos mismos que colocaste en el cofig.php, si anda el problema era ese, tambien es buena sugerencia la que comenta juanpro y ebe de colocar la funcion mysql_error() para saber si la consulta esa mal hecha pero creo que esta bien. En definitiva todavia lo que no sabemos es si es un problema de conexion o de la consulta.
Saludos. xD
__________________
->Aprender es un proceso que incluye el error..
  #7 (permalink)  
Antiguo 29/05/2007, 23:39
 
Fecha de Ingreso: enero-2005
Mensajes: 386
Antigüedad: 19 años, 3 meses
Puntos: 3
Re: insertar datos a base de datos

Hola ya lo pude agrega gracias :D

Última edición por Alphabravo; 29/05/2007 a las 23:45
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:14.