Justi 26 de Mayo de 2008 a las 13.00
   Imprimir artículo
elWebmaster.com

Taller de PHP: Insertar datos en la base de datos


Taller de PHP: Insertar bases de datos¡Buenos días alumnos! Hoy vamos a continuar con la inserción de datos en nuestra base, así ya tienen más sentido nuestras consultas de la clase anterior.

Y para que se entiendan mejor vamos a seguir el ejemplo de la tabla noticias con los campos idNoticia ( int(11) - autoincremental), titulo (varchar( 255)), cuerpo (text) y estado (enum(’publicado’,'borrador’)) que vimos la semana pasada.

¿Cómo insertar nuevos registros en la base de datos?

En realidad la consulta para insertar los nuevos registros es bastante fácil si entendieron la clase anterior. Básicamente la sintaxis es como sigue:

$query = "INSERT INTO `nombre_tabla` (campo1,campo2) values (valoresCampo1,valoresCampo2)";
$response = mysql_query($query, $conn);

Recuerden que la tienen que realizar siempre antes de realizar cualquier tarea en el script con base de datos la conexión con la misma.
De igual modo esto se hace una vez, por lo general arriba de todo en cualquier script se pone la conexión con la base de datos y después la variable que la guarda, $conn, en nuestro caso se utiliza para todas las consultas, ya sean de insertar, borrar, consultar, etc.

Casos de uso

Esta es la parte divertida, ver realmente cómo vamos a utilizar esta sentencia de MYSQL. Básicamente lo que vamos a tener es un archivo que llamaremos “subir-noticias.php”, el cual separaremos en dos: por un lado todo nuestro script en php y por otro lo que tiene relacion con HTML. Ya van a ver cómo se empieza a complicar todo :).

Veamos la parte de HTML primero.

<html>
<head>
<title>Formulario de Notícias</title>
</head>
<body>
<h1>Agregar Nueva Noticia</h1>
<form action=”subir-noticias.php” method=”post”>
<label for=”titulo”>Titulo</label><br />
<input id=”titulo” type=”text” name=”titulo” value=”" /><br /><br />
<label for=”cuerpo”>Cuerpo</label><br />
<textarea id=”cuerpo” name=”cuerpo” rows=”5″ cols=”50″></textarea><br /><br />
<label for=”estado”>Estado</label><br />
<select id=”estado” name=”estado”>
<option value=”publicado”>Publicado</option>
<option value=”borrador”>Borrador</option>
</select><br /><br />
<button type=”submit” name=”submit” value=”1″>Enviar Noticia</button>
</form>
</body>
</html>

Si prestan atención verán que el formulario no tiene nada de raro salvo que la acción del mismo apunta al mismo archivo. ¿Por qué es esto? Porque, como dije antes, vamos a trabajar todo sobre un mismo archivo, separando lo que es PHP de lo que es HTML. Arriba del HTML vamos a poner todo nuestro script de PHP que va a ser como sigue:

<?
// datos de configuracion
$ip = ‘localhost’;
$usuario = ‘usuario’;
$password = ‘password’;
$db_name = ‘baseDeDatos’;
// conectamos con la db
$conn = mysql_pconnect($ip,$usuario,$password) or die();
// seleccionamos la base de datos
$huboerror = mysql_select_db($db_name,$conn) or die();
// si se envia el formulario
if ( !empty($_POST['submit']) ) {
$query = “INSERT INTO `noticias` (titulo,cuerpo,estado) values (’{$_POST['titulo']}’,'{$_POST['cuerpo']}’,'{$_POST['estado']}’)”;
$response = mysql_query($query, $conn);
}
?>

Fijense un par de cositas, arriba de todo pusimos la conexión con la base de datos (esto lo voy a repetir siempre, para que quede bien grabadito :D).

Luego hacemos uso de una condición mediante la sentencia if. Fijense que preguntamos si la variable “submit” no está vacia.
Nosotros en nuestro formulario le pusimos valor 1, entonces siempre que se envíe el formulario, va a llegar también una variable $_POST['submit'] con valor 1. Si no está vacia, hacemos la inserción de la noticia. Ya más adelante veremos como hacer que algunos campos sean obligatorios y otros no, pero como siempre los voy a dejar con la intriga.

Por otro lado verán que uso unos {} en la sentencia de inserción de datos, esto es para que me tome solamente el indice que le estoy pasando del array $_POST, ya que estoy insertando una variable directamente dentro de un string que esta entre comillas dobles(”). Si yo no llegase a incluir los {} me insertaria el array $_POST dentro del String en lugar del valor correspondiente al indice ‘titulo’.

Perfecto ya tenemos nuestro script para agregar noticias. Aquí les dejo el script completo

<?
// datos de configuracion
$ip = ‘localhost’;
$usuario = ‘usuario’;
$password = ‘password’;
$db_name = ‘baseDeDatos’;
// conectamos con la db
$conn = mysql_pconnect($ip,$usuario,$password) or die();
// seleccionamos la base de datos
$huboerror = mysql_select_db($db_name,$conn) or die();
// si se envia el formulario
if ( !empty($_POST['submit']) ) {
$query = “INSERT INTO `noticias` (titulo,cuerpo,estado) values (’{$_POST['titulo']}’,'{$_POST['cuerpo']}’,'{$_POST['estado']}’)”;
$response = mysql_query($query, $conn);
}
?>
<html>
<head>
<title>Formulario de Notícias</title>
</head>
<body>
<h1>Agregar Nueva Noticia</h1>
<form action=”subir-noticias.php” method=”post”>
<label for=”titulo”>Titulo</label><br />
<input id=”titulo” type=”text” name=”titulo” value=”" /><br /><br />
<label for=”cuerpo”>Cuerpo</label><br />
<textarea id=”cuerpo” name=”cuerpo” rows=”5″ cols=”50″></textarea><br /><br />
<label for=”estado”>Estado</label><br />
<select id=”estado” name=”estado”>
<option value=”publicado”>Publicado</option>
<option value=”borrador”>Borrador</option>
</select><br /><br />
<button type=”submit” name=”submit” value=”1″>Enviar Noticia</button>
</form>
</body>
</html>

Hasta la semana que viene.

<< CLASE ANTERIOR  

CLASE SIGUIENTE >>


Enviar a Del.icio.us Enviar a Meneame Enviar a Digg Enviar a Fresqui Enviar a Enchilame

Comentarios (51)

  1. Fajil dice:

    !! Felicitaciones !! , gracias a tu sitio y a tus detalladas y excelentes explicaciones, he aprendido mucho en muy poco tiempo.
    Da gusto encontrar sitios como este en la red.

    Tengo un pequeño anillo web en desarrollo, mi hija cree y jura que yo soy un master en diseño web, je,je.
    La verdad es que lo poco que sé, no da para la opción que ella quiere que yo le habilite en su futura meta.
    Ella esta muy motivada en desarrollar su ‘mini-propia comunidad social’, a mi me parece fenomenal su iniciativa y como padre estoy muy interesado en apoyarla, pues esa sería una gran opción para entretenerla y despertarle sus reales inclinaciones en el mundo de la informática que es lo que más hasta ahora le atrae.
    Ella desea que sus amigas puedan poner sus nombres en las paginas que mi hija les diseñe y a la vez los puedan publicar y cambiar cuando quieran de acuerdo a una variedad de letricas animadas y decoradas. De igual manera les piensa poner uno recursos para que ellas mismas publiquen en sus páginas, algo así como myspace chiquitico, ja,ja.

    El asunto es que cada nombre se haría de la unión de los gifs iguales a la cantidad de letras del nombre:
    Por ej en el nombre de ANA de acuerdo a lo que le entiendo iría algo así como A.gif+N.gif+A.gif.que genere una imagen que se publica de alguna forma y de alguna manera sube a una base de datos, etc.

    De PHP no sé mucho pero de acuerdo al tutorial que hay en tu sitio, veo que con un poquito de estudio y una buena cuota de tiempo, lo iré conociendo y mejorando.

    Me puedes decir cuanto me cobras por el script y la explicación de su funcionamiento?

    Soy Colombiano pero hace 18 años que vivimos en Puerto Rico, de hecho mi hija es Boricua y acaba de cumplir sus 15 Añitos, Este script sería algo que me caería como anillo al dedo para complementarle su regalito de los 15.

    Cordial saludo y nuevamente Felicitaciones por tu excelente aporte y sitio web.

  2. Justi dice:

    Hola, lo que queres hacer con el nombre es bastante facil.
    Supongamos que tenemos nuestra variable $nombre = “ana”, lo que tienes que hacer es primero ver el largo de la cadena de texto. Eso lo hacemos con la funcion strlen de la siguiente forma

    $nroDeLetas = strlen($nombre);

    Una vez que tenemos el largo ya podemos trabajar con un for para ir letra por letra.

    for( $c = 0; $c < $nroDeLetras; $c++ ) {
    echo "<img src='{$nombre[$c]}' />";
    }

    Lo que va a hacer ese bucle es ir pasando por $nombre[0], $nombre[1] y $nombre[2] que corresponde a cada letra, el indice 0 es para la primer A, el indice 1 es para la N y el indice 2 es para la segunda A.

    Espero que te sirva, saludos.

  3. Fajil dice:

    Gracias Justi, Bueno, encontrar tu respuesta, aparte de ser gesto de buen seguimiento y fina cortesía, es una muestra de que en realidad este sitio impone la dinámica y las ganas que se necesitan en este desagradecido mundillo de la informática, en el cual todos pedimos mucho y muy pocos retribuímos o agradecemos lo recibido.

    Aplauso grande. Estudiaré con juicio lo que me dices del php, desde ya veo, que estoy muy distante de comprender bien, lo que sé que muy seguramente expusiste para los que saben de manera clara, sencilla y práctica.

    Saludo y sigue con tu sitio sin pausa ni tregua, éxito en tus planes y proyectos.

  4. Angeles dice:

    no me guarda nada no marca error pero no guarda nada :( a que se puede deber???

  5. María dice:

    Hola, lo primero: muchas gracias por la información. Mi duda es la siguiente:
    ¿cómo hago para que, por ejemplo, el campo “cuerpo” pueda contener código html?
    Sé que se utiliza htmlentities y en otro sitio html_entity_decode(), pero no tengo claro cómo sería el código php.
    Muchas gracias.

  6. Justi dice:

    Hola María, yo por lo general guardo la información en html tal cual como la escriben en base de datos, solo evito que me pongan código malisioso que pueda romper la base de datos, pero no me gusta modificar lo que escribio un usuario.

    El tema de los htmlentities es a la hora de mostrar la información que esta guardada en base de datos, lo que hace es que un codigo html no se vea como tal, sino como un string, es decir reemplaza por ejemplo un <html> por & lt;html& gt; y evitas que se muestre el codigo html en pantalla.

    Por ejemplo si yo NO quiero que en cuerpo haya codigo html, yo lo guardo tal cual como lo escribe el usuario, pero a la hora de mostrar, cuando hago el echo lo pongo de la siguiente manera:

    < ? echo htmlentities($cuerpo); ?>

    Y de esta forma evitamos que ejecuten html en nuestro sitio.

  7. María dice:

    Muchas gracias Justi! Repasando algunas páginas me he dado cuenta que, efectivamente, me aceptan html sin problemas, el problema venía por el tamaño del texto que era demasiado grande, pero bueno, esto no tiene que ver con el html ;)
    Al ser páginas internas sí necesito que acepte código html, pero tomo nota de lo que comentas para otro tipo de páginas donde no interesa que puedan generar código.

    Gracias de nuevo!

  8. javier espinosa dice:

    Gracias por sus aportaciones, son de buena calidad y bien explicadas. Me gustaria si le es posible a alguno de ustedes ayudarme a insertar registros a una tabla usando los datos de un archivo de texto separados por coma.

  9. Juan dice:

    En un formulario que he creado, todos los datos que el formulario recolecta se insertan sin problema en la base de datos, menos el campo en el cual va la ip del usuario que navega en mi sitio, siendo que el resultado que me muestra es ‘<?php echo, que es una parte de la instrución (<input type=”hidden” name=”ip” value=”>), esto me deja totalmente desquiciado, porque en otra base de datos y en el servidor de prueba, el campo funciona bien y registra la ip del visitante. Sabría decirme a que puede deberse esta situación?

  10. salvador dice:

    Hola la verdad no me sale no c en ke este el error

  11. German Franco dice:

    Hola Justi, hice un cambio de acuerdo a como tengo yo una tabla en mi diseño.

    $query = “INSERT INTO personas (nombre) values (’{$_POST['nombre']}’,'{$_POST['apellido']}’,'{$_POST['email']}’)”;

    pero cuando voy a ver el registro en la BD, el email va a parar al campo nombre de la BD. y los otros dos valores no los almacena, ni siquiera deja los campos en NULL parece que les entrara aire XD

    A que se debe eso?

    Salu2,

  12. Dk dice:

    Hola quiero aportar aquí al maestro, que primero felicitarlo, vaya joya de oro que nos estas dejando!…
    miren, el problema que German tiene me pasa a mi mismo. seguro que ya lo resolvio., por favor corrijanme si me equivoco, pero esta linea tiene unos errores $query = “INSERT INTO `noticias` (titulo,cuerpo,estado) values (’{$_POST['titulo']}’,’{$_POST['cuerpo']}’,’{$_POST['estado']}’)”;

    Primero decirles que tengan cuidado con las comillas y apostrofes que se estropean al colocarlos en blogs o pegarlos en la web. por ejemplo ’{$_POST['titulo']}’ deberia de ser con ( ‘ ) así —> ‘{$_POST['titulo']}’, bueno el problema de esa linea es que veo que no a selecionado la base de datos. yo en php my admin me fui a: primero seleccione la tabla noticias. después, en el menú de arriba le dí insertar, y llene un registro. dejando vacío solo el de id.
    http://img91.imageshack.us/img91/1501/pantallazogq8.png
    ahí dejo la foto para que me entiendan. ahora le di continuar y me sale lo siguiente
    http://img231.imageshack.us/img231/1621/pantallazo1bm5.png
    //de inicio la cosa cambia…
    //primero selecionan la base de datos, en mi caso noti. y luego la tabla…
    INSERT INTO `noti`.`noticias` (
    `idNoticia` ,
    `titulo` ,
    `cuerpo` ,
    `estado`
    )
    VALUES (
    NULL , ‘Mi punto de vista.’, ‘Prueba de una noticia…. muajajaj!’, ‘borrador’
    );
    // y se fijan en los values cada uno va separado por comas y con apostrofes o comilla simple.

    Bueno maestro corrígeme si me equivoque.

    INSERT INTO `noti`.`noticias` (
    `idNoticia` ,
    `titulo` ,
    `cuerpo` ,
    `estado`
    )
    VALUES (
    NULL , ‘Mi punto de vista.’, ‘Prueba de una noticia…. muajajaj!’, ‘borrador’
    );
    como resultado me dio esto

  13. Gonzalez Diego dice:

    Ante todo felicitarte por la claridad y la simplicidad con la que explicas los temas, haciendolos amenos, agradables y entendibles a la vez.
    Despues de Leer todas las clases y me refiero a todas, decidi probar creando en mi base de datos la tabla “noticias” y dentro de ella sus respectivos campos al pie de la letra sin perder detalle alguno. Aclaro que mi base de datos esta alojada en un servidor web y no en mi equipo local (creo que ahi esta el problema).
    Una vez creada la tabla con pypMyAdmin, me dedique a escribir el codigo php al pie de la letra tal y cual se muestra en esta pagina.
    El resultado, no me sale nada, tanto en el internet explorer como en el firefox.
    Por favor te suplico me ayudes a entender que me falta para que me salga ya que en otra pagina encontre ejemplos parecidos y de otra manera algo asi por ejemplo: me sale, pero ahora estoy confundido que entendi mal.
    Sin otro particular y esperando una pronta respuesta, te saluda atte.
    Diego Gonzalez

  14. Justi dice:

    que no te sale?

  15. Marco dice:

    Primero que nada debo felicitarte y agradecer un material tan didactico y completo a la vez, realmente ha sido un placer ir siguiendo tus clases para aprender este lenguaje, mi consulta se repite con algo que esta sin respuesta mas arriba, tengo el formulario funcionando y al llenar los campos y darle submit, este se vuelve a poner en blanco, pero no ingresan las entradas a la base de datos =(, si lo hago a traves de phpadmin puedo agregarle informacion a la DB pero a traves del formulario no hay caso. alguna idea de que puede ser?

  16. Carlos dice:

    Holas que tal!

    Me encanta este curso, estuve busando por mucho tiempo algo así! te agradezco !

    Pero Quiero decirte que tienes un error en el código, por eso no permite insertar datos en la Base de Datos!

    —————————-
    Tienes
    $query = “INSERT INTO ‘noticias’ (titulo,cuerpo,estado) values (’{$_POST['titulo']}’,'{$_POST['cuerpo']}’,'{$_POST['estado']}’)”;
    —————————-
    Y debe quedar:
    $query = “INSERT INTO noticias (titulo,cuerpo,estado) values (’{$_POST['titulo']}’,'{$_POST['cuerpo']}’,'{$_POST['estado']}’)”;
    —————————-

    También la Variable “$response” no es llamada por nada, así que la elimine y el código quedo de la siguiente manera:

    ———————
    Con la variable: :(
    $response = mysql_query($query, $conn);
    ———————
    Sin la Variable: :)
    mysql_query($query, $conn);
    ——————–

    Solo saque las comillas en noticias como pueden ver y elimine la variable $response!

    el Código completo quedaría así:
    —————-
    Codigo completo para insertar registro:
    —————-

    Formulario de Notícias

    Agregar Nueva Noticia

    Titulo

    Cuerpo

    Estado

    Publicado
    Borrador

    Enviar Noticia

    ———————-

    Bueno eso quería aclarar, ya que me quede trabado en esto hasta que logre la solución con algo de ayuda, espero que les pueda ayudar en algo!

    Saludos! y sigan con el curso je! :D

  17. Carlos dice:

    Perdon, el código no salio! :s

    veamos si ahora si:

    ————–
    // datos de configuracion
    $ip = ‘localhost’;
    $usuario = ‘tu_user’;
    $password = ‘tu_pass’;
    $db_name = ‘tu_base_de_Datos’;
    // conectamos con la db
    $conn = mysql_pconnect($ip,$usuario,$password) or die();
    // seleccionamos la base de datos
    $huboerror = mysql_select_db($db_name,$conn) or die();
    // si se envia el formulario
    if ( !empty($_POST['submit']) ) {
    $query = “INSERT INTO noticias (titulo,cuerpo,estado) values (’{$_POST['titulo']}’,'{$_POST['cuerpo']}’,'{$_POST['estado']}’)”;
    mysql_query($query, $conn);
    }

    Así si funciona!

  18. Edison dice:

    Concuerdo con carlos con eso de quitar la comila“ que es en si una tilde invertida, pues igual funciona, yo tuve problemas con esto, pero al final use mis conocimientos de sql que usaba en SqlServer y Oracle, al igual que en mysql cuando hacia las conexiones y consultas en java y visual basic jeje y si funciona sin nada de esas comillas, ademas evito poner directamente la variable del post ($Post['campo']) en la sentencia de sql ya que es como una proteccion guardarla en variable asi se eviatria los famosos sql injection de cierta forma. Bueno espero seguir atento al curso, recien voy por la clase de manipulacion de archivos pero vine para aca a ver si ayudaba en algo a la people.

  19. Fernando dice:

    Estoy intentando seguir vuestros pasos pero me sale este error.
    Warning: mysql_pconnect() [function.mysql-pconnect]: Unknown MySQL server host ‘‘localhost’’ (1) in /home/riberad/public_html/principal/bdatos/conectar3.php on line 8

  20. Justi dice:

    el problema fernando es que no esta encontrando la base de datos corriendo en la misma maquina donde estan los archivos, puede ser por dos cosas, o que el host de la base de datos no sea “localhost” sino una ip externa, o que este apagado el servicio de base de datos.

  21. Marita dice:

    Hola Justi

    Muchas gracias por sostener este espacio de aprendizaje y conocimiento. Siempre vengo a este sitio cuando tengo dudas y siempre he encotrado muy buena voluntad de ayuda.
    Ahora estoy haciendo una encuesta que tiene más de 500 variables y decidí trabajar con PHP, MySQL,(instalé Xampp) el código de PHP lo genero desde Dreamweaver CS3 (que me resulta más fácil) he podido hacer bien la conexión con la Base de Datos, pero se me da la duda ya dentro de Dreamweaver. Una vez creado mi formulario (son varias páginas) cada elemento a insertar debe ser de los que aparecen en la opción formulario, o deben ser Objetos PHP o Datos dinámicos.
    No sabía si colocar esta consulta en el taller de dreamweaver o aqui, lo hice por este taller porque se trata más profundamente la relación con la Bases de Datos.

    Muchas Gracias, saludos

  22. Justi dice:

    @marita, hola marita, te conviene insertar en la base de datos los datos que se envian atraves del formulario. Saludos.

  23. Marita dice:

    Gracias Justi

    Ya lo hice y funciona muy bien la conexión con la BD, ahora tendré que resolver el tema del volumen de datos, son aproximadamente 850 campos, (los ingreso en 7 páginas) calculo que sería bueno ir pasando a la base por bloques. Respecto a poner botones de anterior y siguiente en las páginas (para que quien haga la encuesta pueda ir viendo que contestó) cómo tendré que manejar el registro para que no haya re inserciones? Muchas Gracias, Saludo
    Marita

  24. carelys dice:

    buenas el codigo ese me a ayudado basytante pero lo que no me funciona es la variable response que me toma valor false y no me permite insertar en la base de datos ..
    por favor necesito ayuda ..
    a que se deveria esto???

  25. roberto agudelo dice:

    buenas necesito hacer este examen para la entragarlo para la otra semana si alguien me puede ayudar se lo agradecere.
    Prueba de programación PHP
    Crear un sitio Web con las siguientes características.
    – Diseño usando CSS2 (HTML div) con logotipo y diseño similar al del sitio:
    http://www.newportcottages.com
    – El tema del sitio sera Aviones Jet Privados
    – Todo el sitio estará compuesto por solo 2 Scripts PHP, uno sera el home page y otro seran las
    paginas de los aviones (minimo 5).
    – El homepage contendrá un menú con los links hacia cada una de las paginas de los aviones,
    este menú sera dinámico y cambiara de acuerdo con la base de datos.
    – El script de la pagina de los aviones extractara el titulo, la marca, la descripción del avión y
    una foto del mismo, las fotos se deberán almacenar en una carpeta independiente.
    – El sitio no necesita tener un administrador del contenido, cualquier cambio en el contenido
    tendra que hacerse directamente en la base de datos.

  26. rubi dice:

    jajaj oye otra vez yo ya no me sale eror ya me manda a una pagina en blanco intente agregar datos pero me manda a la pagina en blanco y no carga la informacion q le estoy pidiendo q carge por que? q tengo q hacer lo hice con un codigo mio y el q piratie tuyo pero a un asi se me hace mas complicado investigar por q no me manda mensaje de error cuando le pongo enviar me manda a una pagina en blanco sin error me ayudas :$

  27. EddiE DesiGn dice:

    Este taller esta lo maximo :D xeveres, ya me salio y si agrega a la base de datos =D

  28. minerva dice:

    no me sale ningun error pero el problema esta en que no inserta informacion a mi base de datos… ayudame please…

    COLEGIO

    Base de Datos de Alumnos

    Información

    Nombre

    Apellidos

    Fecha de Nacimiento
    Año

    1988
    1989
    1990
    1991
    1992
    1993
    1994

    Mes

    Enero
    Febrero
    Marzo
    Abril
    Mayo
    Junio
    Julio
    Agosto
    Setiembre
    Octubre
    Noviembre
    Diciembre

    Dia

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20

    Sexo

    Hombre
    Mujer

    Ubicación

    Departamento

    Arequipa
    Lambayeque
    Piura
    Trujillo

    Distrito

    La Victoria
    Jos&eacute Leonardo Ortiz

    Dirección

    E-mail

    Referencias del alumno

    Enviar Datos

  29. Justi dice:

    @minerva hola, podes decirme como estas armando la consulta del insert? gracias.

  30. h@ck3rb3@r dice:

    gr@x grax gr@x m3n tu tutori@l de php me a servido de mucha ayuda ,
    m3 a s@cado d3 un @puro gracias por public@r est3 mat3rial k 3sta muy bi3n explic@do

  31. Masam dice:

    Me has sacado de un apuro con el insert. En lugar de ‘{$_POST['nom']}’ usé ‘{$_GET['nom']}’ y me funcionó perfecto.
    Gracias.

  32. Jose Damian dice:

    hola, espero me puedan ayudar, me urge por favor. Bueno mi pregunta es la siguiente:

    ¿Como puedo hacer para insertar los datos que se encuentran en un segundo formulario hacia una base de datos? Explico un poco mas claro:

    Tengo un “formulario1″ desde este se hace validacion y los datos son enviados a un segundo “formulario2″. Desde este segundo llamo a un php que inserta a base de datos, la insercion se realiza pero con datos en blanco.¿que puede estar pasando?

    les dejo mi email para su respuesta, ya que no puedo estar revisando durante el dia. Gracias de antemano: chepito2_2@yahoo.com.mx

  33. Daniel dice:

    Hola amigos tengo una pregunta, acerca de si puedo insertar datos en dos bases de datos al mismo tiempo, se puede hacer eso?

  34. Ernesto dice:

    e aprendido mucho de aqui muchas gracias.. a y cuidado con colocar el nombre de la tabla entre comillas porqeu tonces no podran insertar en la bd…grax

  35. Ernesto dice:

    el motor de la base de datos se encarga del insertado de manera concurrente creo ke mysql lo puede hacer,, es muy probable ke puedas insertar datos en paralelo.

  36. Pedro dice:

    Hola quiero darles gracias por lo que hacen en verdad esto es interesante.estoy aprendiendo amenjar php….Pero ahora que quiero trbajar con BD al querer hacer un registro me marca este error……
    Parse error: syntax error, unexpected T_STRING in C:\xampp\htdocs\Practicas1\registre.php on line 25
    y mi linea es la siguiente..
    $query = (“INSERT INTO cliente (id,nombre,telefono) VALUES (‘{$_POST['id']}’,‘{$_POST['nombre']}’,‘{$_POST['telefono']}’)”);
    espero y me puedan ayudar
    saludos…

  37. edgar dice:

    hola a todos!! necesito ayuda soy nuevo en php!! resulta q quiero conectar un formulario a una base de datos mi formulario tiene los siguientes campos:

    nombre
    apellido
    telefono
    mail
    mensaje

    cree mi tabla de base de datos con el nombre de proytecto y una tabla con el nombre de solicitud
    los campos de mi tabla son los siguientes:
    id nombre apellido telefono mail mensaje

    entonces tengo este codigo que dieron aqui y pense q me podia servir y lo modifique de la sigueinte forma

    y me arroja este error

    Parse error: parse error, unexpected T_STRING in C:\AppServ\www\proyecto\conex.php on line 13

    si alguien me ayuda se lo agradesco esto es para un proyecto de mi unversidad!!

  38. victor dice:

    felicidades tu sitio es excelente y lo explica de forma muy fácil, mucho mejor que muchos libros voy apenas en el capitulo 19 pero me has aclarado muchos detalle, después te platico como fue con el resto.
    hasta pronto

  39. Manuel dice:

    Hola, primero felicitarte por este taller de PHP que esta buenazo. Paso a la pregunta y es que en la parte de HTML con la parte
    Enviar Noticia
    no hace ninguna insercion en la BD, no se si hay algun error; pero revisando en las clases anteriores cambie el tipo button por uno de tipo input y ahi si me inserto una noticia de forma normal. Hubo algun error en la parte de HTML? o que pasa porque con button no funciona, bueno a mi no me funciono

  40. Manu dice:

    Hola que tal, tengo que insertar esto en mi web,
    insertar un código de “romper el marco” en su página: no se donde insertarlo, si en el Index.php, o en todas las paginas. la verdad increible este taller. Gracias

  41. alfonso dice:

    hola quisiera que me ayuende el problema es que no inserto mas reguistros ecepto uno solo ejemplo quiero insertar 3 registros el ultimo reguistro si me lo inserta pero los dos primeros no lo hace o es que el inser que esta dentro de mi foreach esta mal ayuda si porfis, el codigo es el siguiente.

    foreach($canastaa as $k=> $v)
    {
    $rs_item=mysql_query(”select idproducto,precio_sugerido from producto where idproducto=’$k’”);

    if(!$rs_item)
    echo “Error SQL:”.mysql_error();

    $item=mysql_fetch_array($rs_item);
    $idproducto=$item[0];
    $pv=$item[1];
    $cantidad=$v;
    $sub_total=$item[1]*$v;
    $sqldetall_pedido=”insert into detalle_pedido values(’$idproducto’,'$pedidos’,'$pv’,'$cantidad’,'$sub_total’)”;

    }

  42. joel dice:

    mi formulario envia correctamente, pero cuando envio la misma palabra se envia tmb , quiero q no se envie otra vez con el mismo nombre como ago, hay una funcion de

    ejemplo
    envio “mana”

    vuelvo a envia “mana”
    sigue enviado a la tabla osea q mande un mensaje q me diga ese nombre ya esta ingresado… Gracias
    if(resulta==0)
    {}

    pero nose cual es alguien me ayuda

  43. Manuel Vasquez dice:

    Hola soy nuevo en esto de php,quiero que me ayuden en codigo,tengo la siguiente duda,miren,crea un formulario donde se ingresa login y contraseña para distintas personas del sistema,en este caso 3(admin,jefe y secretaria);mi problema es que codigo debo hacer
    para que cada usuario(admin,jefe y secretaria),se tenga que ir a su pagina correspondiente y no por defecto,ojala me puedan ayudar gracias.

  44. sandra dice:

    hola tengo un problema espero y me puedan ayudar me urge plisssss lo que necesito es insertar una fecha pero en un periodo DEL(dia/mes/año) AL(dia/mes/año) quiero ocupar un combo lista/MENU ES DECIR QUE ME DESPLIEGE EL DIA EL MES Y EL AÑO , MI PROBLEMA ES…..que no se como guardarlo en la base de datos es decir que los 3 solo ocupen un campo “DEL” Y LOS OTROS 3 otro que diga”AL” lo que no se es como validarlos en mi formulario que inserta a la base de datos estoy ocupando el codigo
    $Periodo_Del_Al=$_REQUEST["Periodo_Del_Al"]; pero asi solo se puede ocupando una caja de texto ayudenme plisssssssssssss

  45. isaias dice:

    Hola me gustaria me ayudaran, tengo un problema ago una web donde pongo post
    en la tabla post tendo id-titulo-descripcion tambien tengo una tabla de comentarios id,nombre,email,comentario el problema es que no logro asignar los comentarios respectivos para cada post me salen los comentarios revueltos ejemplo: 1.post 1 y post 2
    en el post 1 veo todos los comentarios incluyendo los del post 2 y viseversa me podrian ayudar por favor GRacias

  46. RENZO LOPEZ GARCIA dice:

    creo que es bueno que in contremos paginas de orientacion deverdad bueno

  47. RENZO LOPEZ GARCIA dice:

    Como ago para conseguir código para crear un registro que lleve esta descripción nombre día de llegada y comentario

  48. Pablo dice:

    Hola una pregunta cuando yo tengo separado en archivos diferentes lo que acabas de explicar te muestro como y te paso a explicar mi problema :
    Este es el formulario donde se agregan datos form_agrega.php pasa por el action a un archivo agregar.php

    Panel de Control

    Ver/modificar/eliminar noticias
    Agregar Noticias

    Fecha<input type=”text” name=”fecha” readonly value=”" >

    Titulo

    Noticias

      

    Ahora te paso el código del agregar.php :

    Ha subido Correctamente la noticia

    Ha subido correctamente la noticia

    Subir mas noticias

    Visualizar Noticia en la página

    cuando entra en esta pagina (agregar.php) donde sale el link subir mas noticias el problema es que cuando le doy a actualizar (F5) me inserta un dato en blanco en la base de datos o sino me agrega dos veces los datos que venían del formulario, me agrega los mismos datos cuando veces le doy a actualiza me gustaría saber que puedo hacer para que no me pase esto ya que creo que si pongo online mi web y le dan los usuarios a actualizar me van a agregar datos repetidos o en blanco en mi base de datos

  49. Pablo dice:

    perdon no sabía que iba salir asi y no el codigo que puse

  50. Fredy dice:

    Hola, antes que nada, muchas gracias por el tut, pero tengo un pequeño gran error. me sale este error.

    Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\xampp\htdocs\lol23.php on line 12

    y mi codigo esta asi:

    espero puedan ayudarme

  51. rvc dice:

    hola que tal tengo un gran problea y no logro desifrarlo no se insertan los datos en la db de mysql por mas que ya revise el codigo fuente no encuentro ningun error y porngo la sentencia para que se imprima el error que manda mysql y nada no aparece nada solo que los datos no se incertan alguien podri decirme por que mi codigo es este

    require ‘framework/FrameworkConfig.php’;
    $nombre=$_POST['nombre'];
    $direccion=$_POST['direccion'];
    $cp=$_POST['cp'];
    $ciudad=$_POST['ciudad'];
    $pais=$_POST['pais'];
    $telefono=$_POST['telefono1'];
    $telefono2=$_POST['telefono2'];
    $st=$_POST['st'];
    $mail=$_POST['mail'];
    $tipo_comida=$_POST['tipo_comida'];
    $descripcion=$_POST['descripcion'];
    $serv=$_POST['serv'];
    $siglas=$_POST['siglas'];
    $siglas_z=$_POST['siglas_z'];
    $face=$_POST['face'];
    $twit=$_POST['twit'];
    $otro=$_POST['otro'];
    $moneda=$_POST['moneda'];
    $h_s=$_POST['h_s'];
    $mesas=$_POST['mesas'];
    $nota=$_POST['nota'];

    $query = “insert into sucursal(nombre,siglas,direccion,cp,ciudad,pais,telefono1
    ,telefono2,sitio_web,email,tip_comida,descripcion,servicios,facebook,twitter,other,
    moneda,huso_horario,mesas,nota,siglas_z) values ( ‘$nombre’,'$siglas’,'$direccion’,'$cp’,'$ciudad’,'$pais’,'$telefono’,'$telefono2′,’$st’,'$mail’,'$tipo_comida’,'$descripcion’,'$serv’,'$face’,'$twit’,'$otro’,'$moneda’,'$h_s’,'$mesas’,'$nota’,'$siglas_z’)” ;

    $result = mysql_query($query,$con)

  52. javier soto avila dice:

    hola profé y alumnos necesito de su ayuda tengo un codigo para crear galerias y subir imagenes y tambien visualizar las imagenes en la base de datos php, y tiene la opcion para copiar el link que se genero al subir la imagen, pero quiero añadirle texto” remplasar por el link copy., .. que al visualizarse las imagenes tambien se visualice el texto por ejemplo agregarle un tipo de formulario para que se visualizen las imagenes con una caja de texto a un lado generado en el formulario mi e-mail javis_rasing@hotmail.com de antemano se los agradeceria que me pudieran echar la mano yyyyyyyyyyyyyyy aqui pego el codigo php

    <?php

    /*
    Propósito:
    - Este script sirve para ver los caretos o smileys, y subir mas.

    Configuración:
    - Guardar en el directorio donde esten los caretos. Este debe tener permisos 777
    - En “Configuración” indicar el peso máximo del archivo a subir y las dimensiones máximas de los smileys.

    Características:
    - Da la dirección de cada careto o smiley.
    - Permite crear galerías de smileys
    - Permite subir smileys
    - Valid HTML 4.01 Strict!

    Requisitos:
    - Servidor con soporte PHP. Recomendado versión 4.1 o superior
    - Ser humano o compatible.

    Bugs:
    - La función de copiar al portapapeles solo funciona en IE :(

    Licencia:
    - Moralmente esta obligado a mantenerme como autor del script y a comunicarme cualquier sugerencia para mejorarlo o fallos.
    - Además es GPL (¿no?)
    - Y estaría bien que me dijeran que les parece y donde lo usa.

    Versíón:
    - 0.2

    Script creado por: http://www.NoSetup.tk

    */

    // Configuración
    $tamano_max=50000000*50000000; // Tamaño máximo del fichero, en bytes
    $anchura_max=300; // Anchura máxima, en pixels. 0 para no limites
    $altura_max=200; // Altura máxima, en pixels. 0 para no limites

    // NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR
    // NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR
    // NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR
    // NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR
    // NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR
    // NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR
    // NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR
    // NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR
    // NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR, NO TOCAR

    // Para calcular el tiempo que tarda en cargar la página
    $mtime=microtime(); // Tiempo actual en microsegundos
    $mtime=explode(” “,$mtime); // Dividir el tiempo en microsegudos y segundos
    $starttime=$mtime[1]+$mtime[0]; // Sumarles, tiempo donde se ha iniciado el script

    ?>

    Caretos 0.2


© 2007 - 2008 elWebmaster.com | Powered by Wordpress | Diseño CSS y XHTML válido. | Algunos íconos basados en FamFamFam Mini