Curso de PHP – Capitulo 7, Insertar datos en base de datos (MySQLi)



Aprende a insertar datos en MySQL con PHP, enviaremos los campos de un formulario con el método POST y los registraremos en una tabla creada en la base de datos y luego los consultaremos.

Vamos a unir PHP y MYSQL, voy a realizar un ejemplo muy sencillo, lo importante es que NO SE ASUSTEN con los códigos, son muy fáciles de manejar ya que son repetitivos y casi nunca cambian.

Inténtenlo y practiquen creando por ejemplo una página que registre PRODUCTOS y otra página que registre…

, , , , , , , , ,

48 thoughts on “Curso de PHP – Capitulo 7, Insertar datos en base de datos (MySQLi)

  1. Hola amigo, mira estoy siguiendo tu guía de tutoriales y necesito poner la echa en la base de datos. pero no quier que sea digitada por la persona que ingresa los datos. quiero que el sistema tome la fecha de mi región y la guarde en una variable y luego la envié a mi base de datos a una columna fecha. si me pudieras ayudar plisssssssssss

  2. hola dustin exelente trabajo, pero tengo una duda… cuando quiero meter en el codigo el simbolo -> no me sale de rojo como a ti y eso me parece que es lo que me esta provocando el problema. de antemano gracias hermano y saludos desde Chile
    PD: Me ha servido demasiado tu contenido sobretodo html y php!!!

  3. @Dustin y comunidad en general Help, me podrías orientar resulta que con tus apoyos, estuve realizando pruebas y funcionan perfectamente en una computadora, el problema es cuando me llevo estos mismos archivos a otra maquina, creo la base de datos y demás, pero en esta no me alacena los datos, y no me manda error alguno, tendrás alguna idea que estará pasando. Te agradezco enormemente tus respuestas

  4. Buen dia Dostin. La pagina desde donde mandas los datos es un achivo PHP. Pero cuando se cargan los datos desde una la pagina de contactos de un sitio web es un archivo HTML. No pude mandar los datos a la base de datos???

  5. Dostin genio, me ha salido todo el ejercicio correctamente solo que no me muestra este echo…
    include("cerrar_conexion.php");
    echo "Se insertaron Correctamente";
    aunque los datos se guardan en la BD no me muestra el mensaje en la ventana de registro, muchas gracias por tus videos son de mucha ayuda.

  6. eres muy bueno sigue asi y muchas bendiciones profe c: c:
    si esk .. no le salieron!! aca les dejo una carpeta

    //esto es de registro.php

    <!DOCTYPE html>
    <html>
    <head>
    <title></title>
    <!– Latest compiled and minified CSS –>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

    <!– Optional theme –>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">

    <!– Latest compiled and minified JavaScript –>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
    </head>
    <body>
    <div class="row">
    <div class="col-md-4"></div>
    <div class="col-md-4">

    <center><h1>PROPIETARIO</h1></center>
    <form method="POST" action="registro.php" >

    <div class="form group">
    <label for="doc">Documento :</label>
    <input type="text" name="doc" class="form-control" id="doc">
    </div>

    <div class="form group">
    <label for="nombre">Nombre :</label>
    <input type="text" name="nombre" class="form-control" id="nombre">
    </div>

    <div class="form group">
    <label for="dir">Direccion</label>
    <input type="text" name="dir" class="form-control" id="dir">
    </div>

    <div class="form group">
    <label for="tel">Telefono</label>
    <input type="text" name="tel" class="form-control" id="tel">
    </div>

    <center><input type="submit" value="enviar" name="btn1" class="btn btn-success"></center>
    </form>

    <?php
    if (isset($_POST['btn1'])) {
    include ("abrir_conexion.php");
    $doc=$_POST['doc'];
    $nombre=$_POST['nombre'];
    $dir=$_POST['dir'];
    $tel=$_POST['tel'];

    $conexion ->query("INSERT INTO $tabla_db1(doc,nombre,direccion,telefono) values('$doc','$nombre','$dir','$tel')");
    include("cerrar_conexion.php");
    echo "se insertaron correctamente";
    }

    ?>
    </div>
    <div class="col-md-4">

    </div>
    </div>

    </body>

    </html>

  7. a mi no se me guardan en la base de datos me marca error en el query de linea 14
    este es mi codigo:

    <center>
    <form name="formulario" method="post" action="insertar_datos.php">
    Nombre: <br><input type="text" name="nombre"><br>
    Telefono: <br><input type="text" name="telefono"><br>
    <input type="submit" value="Entrar" name="btn1">
    </form>
    </center>
    <?php
    if(isset($_POST["btn1"])){
    include("conexion.php");
    $nombre = $_POST['nombre'];
    $telefono = $_POST['telefono'];

    $conexion->query"INSERT INTO prueba (nombre, telefono) VALUES ('$nombre', '$telefono')";
    echo "datos insertados correctamente";
    }

    ?>

    y este error me marca:

    Parse error: syntax error, unexpected '"' in C:AppServwwwdbinsertar_datos.php on line 14
    ayufa porfavor

  8. Hola Dustin
    A mi me sale este error

    Fatal error: Class 'mysqli' not found in….
    O sea indica el error en el archivo abrir_conexion, (yo nombre a los archivos con otros nombres).
    Entiendo que no encuentra la clase 'mysqli' en el archivo mencionado

    ¿A que se debe esto?
    Saludos

  9. Excelente muy bien explicado , me ayudaste mucho y justo cai en tu video cuando me estaba dando por vencida. Tengo un detalle con una tabla pues yo registro en 3 tablas. Pero de resto muy bien. MUCHAS GRACIAS.

  10. Hola Dostin, estoy usando MAMP por un tema de puertos los demás servidores WEB no me habilitaban todos los puertos, el caso es que tengo como puerto de Mysql el puerto 3305 y no el 3306 por defecto, ¿Cómo puedo hacer la conexión con el puerto 3305?
    Yo lo modifique así y nada —-> $host = "localhost:3305";

  11. Hey amigo, intento varias veces y siempre me aparece esto

    Fatal error: Uncaught Error: Class 'mysqli_query' not found in C:xampphtdocsformlario de registroconexion.php:12 Stack trace: #0 C:xampphtdocsformlario de registroregistro.php(2): include() #1 {main} thrown in C:xampphtdocsformlario de registroconexion.php on line 12

    por que sera?

  12. Hola Dostrin, gracias por tu video. Estoy intentando agregar una columna a la tabla y un campo al formulario pero al momento de hacer esto me sale Undefined variable $conexion, que puede ser?

  13. Hola Dostin, muy buenos los tutoriales, los estoy siguiendo, pero no puedo descargar el material de apoyo, me lo habre en codigo ascii, no encuentro la forma de descargarlo para descomprimirlo.

  14. Hola, me podrias explicar como usar real_escape_string para poder insertar un texto con apostrofo? por ejemplo en el campo apellidos quiero insertar D'Agostino. se que se usa esa funcion, pero no se como escribir el codigo. Gracias de antemano. Saludos y gracias pro tu tiempo

  15. a mi definitivamente no me funciona me da este error
    Warning: mysqli::__construct(): (HY000/1045): Access denied for user 'condominio'@'localhost' (using password: YES) in D:XAMPPhtdocsPRUEBASPHPabrir_conexion.php on line 11
    la conexión experimenta fallos…
    mi linea 11 es:
    $conexion = new mysqli($servidor,$bdatos,$usuario,$contraseña);

Leave a Reply

Your email address will not be published. Required fields are marked *