Foros del Web » Programando para Internet » PHP »

No logro insertar en mi base de datos..

Estas en el tema de No logro insertar en mi base de datos.. en el foro de PHP en Foros del Web. Tengo el siguiente código, y no me inserta los valores en la base de datos.. Los paso por el metodo de get, SI los muestra, ...
  #1 (permalink)  
Antiguo 08/06/2009, 15:24
 
Fecha de Ingreso: mayo-2009
Mensajes: 46
Antigüedad: 15 años
Puntos: 0
No logro insertar en mi base de datos..

Tengo el siguiente código, y no me inserta los valores en la base de datos..

Los paso por el metodo de get, SI los muestra, pero NO los inserta

Código PHP:
<?php
function Conectarse()
{
   if (!(
$link=mysql_connect("localhost","tonio","1234")))
   {
      echo 
"Error conectando a la base de datos.";
      exit();
   }
   if (!
mysql_select_db("titulacion",$link))
   {
      echo 
"Error seleccionando la base de datos.";
      exit();
   }
   return 
$link;
}

$link=Conectarse();
echo 
"Conexión con la base de datos conseguida.<br>";

mysql_close($link); //cierra la conexion
?>
<?php


function formulario ($nocontrol,$name,$carrera)
{
  
conectarse();
  
$sql=mysql_query("insert into datos (nocontrol,name,carrera) values ($nocontrol, $name,$carrera)") or die("No se pudo realizar la consulta");
     }
    
formulario ($_GET['nocontrol'],$_GET['name'],$_GET['carrera'])
    
?>
$nocontrol es un tipo INT(10)
y $name y $carrera son varchar(30)

tengo creada la base de datos y la tabla datos..pero no Inserta..

Saludos y Gracias
  #2 (permalink)  
Antiguo 08/06/2009, 15:29
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 16 años
Puntos: 7
Respuesta: No logro insertar en mi base de datos..

puede ser que lo estes enviado por el metodo $_GET. para insertar datos mayores, siempre se usa por el metodo post.

cambia por el metodo GET por el metodo POST.

saludos.
  #3 (permalink)  
Antiguo 08/06/2009, 15:35
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 15 años, 8 meses
Puntos: 139
Respuesta: No logro insertar en mi base de datos..

Pero que error ta da ?

Usa esta linea para que te muestre el error.

Código PHP:
$sql=mysql_query("insert into datos (nocontrol,name,carrera) values ($nocontrol, $name,$carrera)") or die(mysql_error()); 
  #4 (permalink)  
Antiguo 08/06/2009, 16:06
 
Fecha de Ingreso: mayo-2009
Mensajes: 46
Antigüedad: 15 años
Puntos: 0
Respuesta: No logro insertar en mi base de datos..

Gracias a los 2, por su pronta respuesta.. el error era...que era muy larga la cadena y yo habia puesto solo 30...gracias
  #5 (permalink)  
Antiguo 08/06/2009, 16:07
 
Fecha de Ingreso: mayo-2009
Mensajes: 81
Antigüedad: 15 años
Puntos: 0
Respuesta: No logro insertar en mi base de datos..

prueva esto:

conectar.php

Código PHP:
<?php
    
function Conectar() {
                 
$host =    'localhost';    //servidor de la bd en muchos casos suele ser 'localhost'
                 
$user =    'root';        //usuario que se conecta a la BD
                 
$pass =    'toor';        //Contraseña de la BD
                 
$dbas =    'llegrau';
                
                
//comprobar la conexion a sql server
                
$s = @mysql_pconnect($host$user$pass)
                or die(
"No se puede conectar a Mysql en $host");     
                
                
//comprobar la conexion a mysql                
                
$d = @mysql_select_db($dbas$s
                or die(
"No se puede abrir la base de datos $dbas");  
    }
    
Conectar();
?>
Y pones en todas otras paginas:

include ("conexion.php");

despues:

insertar.php

esto es el formulario

Código PHP:
<?php 
                
if($_POST['anyadir']){ 
            
?>
            <FORM METHOD="POST" ACTION="<?php $PHP_SELF ?>">
                <table width="251"  border="0" align="center">
                    <tr>
                        <td class="Estilo2">C&oacute;digo:</span> </td>
                        <td><input type="text" name="codigo" /></td>
                      </tr>
                  
                      <tr>
                        <td class="Estilo2">Nombre:</td>
                        <td><input type="text" name="nombre" /></td>
                      </tr>

                     <tr>
                        <td align="center" valign="top" class="Estilo2">Descripción:</td>
                        <td><textarea name="descripcion" wrap="soft" cols="20" rows="5"></textarea></td>
                     </tr> 
                    
                     <tr>
                        <td align="center">
                            <input type="submit" name="insertar" value="Insertar" />
                        </td>
                        <td align="center">
                              <input type="reset" name="borrar" value="Borrar" />
                        </td>
                      </tr>
                </table>
            </FORM>
    <?
Esto hace la funcion de insertar, en insertar tienes poner todos los campos de la tabla.
Código PHP:
if ($_POST['insertar']) {
        
        
$sqlinsertar  "INSERT INTO almacen VALUES ('" ;
        
$sqlinsertar .= $_POST['codigo'] . "','" ;
        
$sqlinsertar .= $_POST['nombre'] . "','" ;
        
$sqlinsertar .= $_POST['descripcion'] . "');" ;

        
$resultado mysql_query($sqlinsertar);
    } 
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 17:31.