Documentos de Académico
Documentos de Profesional
Documentos de Cultura
al finalizar la sentencia END se agregan estos signos $$, mas abajo en la caja
de texto que dice delimitador, se vuelven a ingresar estos signos $$. Tal cual
aparece en la imagen que adjunto.
Edicin 01/05/2012
Tal como lo indica uno de los comentarios annimos. Para obtener una lista de
los procedimientos creados en una base de datos se usa la siguiente orden:
Por defecto, PhpMyAdmin muestra el cdigo en una linea. Se debe hacer click
sobre el linkOpciones y elegir Texto Completo.
Para cerrar el circulo. Lo que normalmente va a pasar es que quieras hacer
alguna modificacin al procedimiento. Pero en MySql un ALTER PROCEDURE no
va a funcionar para cambiar parmetros ni el cdigo (ver link ALTER
PROCEDURE Syntax). Lo que se debe hacer es eliminar el procedimiento y
volver a crearlo.
Comparte! Facebook
Comparte! Twitter
Comparte! Google+
Imprimir
MyISAM: motor por defecto, muy rpido para consultas, no provee integridad de datos,
ni proteccin referencial. Ideal sistemas con muchas consultas
InnoDB: provee proteccin referencial e integridad de datos adems de bloqueo de
registros, ideal si se va a insertar, editar o eliminar mucha informacin constantemente.
Generalmente para procedimientos almacenados es mejor utilizar InnoDB.
En la pestaa SQL creamos nuestro primer procedimiento almacenado para consultar los tipos
de vehculos. Escribiros en el campo de texto de sql.
CREATE PROCEDURE consultar_tipo_vehiculo() ---> nombre del procedimiento
SELECT * FROM tipo_vehiculo ---> SQL que debe resolver
Si ejecutamos la consulta SQL recibiremos un mensaje de xito al crearse el procedimiento.
Para ver los procedimientos creados desde la pestaa SQL consultamos la orden SHOW
PROCEDURE STATUS, que no mostrara todos los procedimientos almacenados.
Ahora mostraremos como ejecutar el procedimiento almacenado con el comando CALL
nombre_procedimiento(cada lenguaje de programacin tiene su propia librera para acceder
a un procedimiento almacenado pero son todos similares.
echo"Gracias!Hemosrecibidosusdatos.\n";
</body>
</html>
<formmethod="post"action="add_reg.php3">
Nombre:<inputtype="Text"name="nombre"><br>
Direccin:<inputtype="Text"name="direccion"><br>
Telfono:<inputtype="Text"name="telefono"><br>
Email:<inputtype="Text"name="email"><br>
<inputtype="Submit"name="enviar"value="Aceptarinformacin">
</form>
<?php
}//endif
?>
</body>
</html>
$titulo = mysql_real_escape_string($_POST['titulo']);
Y luego usamos la variable $titulo en la sentencia.
El ejemplo, tratar de mostrar una lista con empleados y sus datos, y un formulario
de alta de empleados. Al final del ejercicio quedar as.
El ejemplo consta de 4
archivos.
empleados_registro.php: Muestra el formulario de insercin y llama a la
funcin en Ajax.
ajax.js: Realiza la recogida de datos del formulario y lo enva al script en
PHP.
<html>
<head>
<title>Registro de empleados</title>
<script language="JavaScript" type="text/javascript" src="ajax.js"></script>
</head>
<body>
<form name="nuevo_empleado" action="" onsubmit="enviarDatosEmpleado(); re
false">
<h2>Nuevo empleado</h2>
<table>
<tr>
<td>Nombres</td><td><label><input name="nombre" type="text"
/></label></td>
</tr>
<tr>
name="apellido"></label></td>
<td>Apellido</td><td><label><input type="text"
</tr>
<tr>
<tr>
ajax.js
// JavaScript Document
// Funcin para recoger los datos de PHP segn el navegador, se usa siempre.
function objetoAjax(){
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
} catch (E) {
}
xmlhttp = false;
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
//Funcin para recoger los datos del formulario y enviarlos por post
function enviarDatosEmpleado(){
//div donde se mostrar lo resultados
divResultado = document.getElementById('resultado');
//recogemos los valores de los inputs
nom=document.nuevo_empleado.nombre.value;
ape=document.nuevo_empleado.apellido.value;
web=document.nuevo_empleado.web.value;
//instanciamos el objetoAjax
ajax=objetoAjax();
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviando los valores a registro.php para que inserte los datos
ajax.send("nombre="+nom+"&apellido="+ape+"&web="+web)
}
//funcin para limpiar los campos
function LimpiarCampos(){
document.nuevo_empleado.nombre.value="";
document.nuevo_empleado.apellido.value="";
document.nuevo_empleado.web.value="";
document.nuevo_empleado.nombre.focus();
}
registro.php
<?php
//Configuracion de la conexion a base de datos
$bd_host = "localhost";
$bd_usuario = "root";
$bd_password = "";
$bd_base = "ajax";
$con = mysql_connect($bd_host, $bd_usuario, $bd_password);
mysql_select_db($bd_base, $con);
//variables POST
$nom=$_POST['nombre'];
$ape=$_POST['apellido'];
$web=$_POST['web'];
//registra los datos del empleados
$sql="INSERT INTO empleados (nombre, apellido, web) VALUES ('$nom', '$ape', '$web')";
mysql_query($sql,$con) or die('Error. '.mysql_error());
include('consulta.php');
?>
consulta.php
<?php
//Configuracion de la conexion a base de datos
$bd_host = "localhost";
$bd_usuario = "root";
$bd_password = "";
$bd_base = "ajax";
$con = mysql_connect($bd_host, $bd_usuario, $bd_password);
mysql_select_db($bd_base, $con);
//consulta todos los empleados
$sql=mysql_query("SELECT * FROM empleados",$con);
?>
<table style="color:#000099;width:400px;">
<tr style="background:#9BB;">
<td>Nombre</td>
<td>Apellido</td>
<td>Web</td>
</tr>
<?php
while($row = mysql_fetch_array($sql)){
echo "<tr>";
echo "<td>".$row['nombre']."</td>";
echo "<td>".$row['apellido']."</td>";
echo "<td>".$row['web']."</td>";
echo "</tr>";
}
?>
</table>
inShare
Previous Image
1.
hola junto con saludarte y agradecerte quiero decir que esta muy bien la forma
detallada en que explicas el uso de ajax justamente estoy haciendo un sistema
web e imperiosamente necesitaba implementarlo muchas gracias.
Responder
J u a n M a n u e l dice:
2.
Hola. Estoy intentando crear una sencilla app en html que enve datos a una base
de datos MySQL, a travs de un formulario (donde hay 3 campos a rellenar por el
usuario). Pero esta app (gracias a Phonegap) permite mostrar las coordenadas del
mvil, creado una variable que, lgicamente, depende de la posicin. Y me
gustara enviar los datos de los 3 campos (que s me aparecen en MySQL) y de las
coordenadas (aqu est el problema: no se graban en la base de datos). Podras
decirme donde est el problema?
Puedes ver el cdigo aqu: https://www.box.com/s/ifywsmxafp6c153x1kng
Y aqu el archivo conecta.php:https://www.box.com/s/j5cqt7rskj7hrv1hshdi
Mil gracias!
Responder
J o r g e C a p e r o t e dice:
1 de julio de 2013 a las 22:39:45
Responder
G E R A R D O dice:
3.
HOLA:
Solo para agradecer el detalle de la explicacin junto con el cdigo comentado me
sirvi de mucho. Gracias
Responder
J a u n C a r l o s dice:
4.
Amigo es seguro esl envia de datos con ajax o hay la posivilidad que manipulen el
envio y hacerlo desde la url y no con el button enviar
Responder
A l d a i r dice:
Hola Juan carlos el riesgo existe ! por medio del metodo post
& get solo es cuestion de que no alla ningun mal intensionado haga eso en tu sitio
y pues cada vez que vallas adquiriendo conocimiento vallas mejorando el script de
tus
consultas
en
tu
base
de
datos
Jorge
Caperote
Muy bueno tu tuto me gusta mucho !
Responder
J o r g e C a p e r o t e dice:
5.
R o b e r t o dice:
6.
Andaba buscando una idea como esta porque necesito guardar datos en la base
pero solo de una seccion de mi pagina , ahora bien tengo una duda tengo un
sistema en php y este guarda datos en la base y tengo un formulario general y un
boton para guardar , se me ha pedido modificar la pagina y darle la oportunidad al
usuario de poder modificar las areas de texto que previamente han sido guardadas
.. tu ejemplo lo trabajas con un form pero en mi caso no podria usarlo ya que
tengo un form general y no puedo meter un form dentro de otro form.hay alguna
otra manera de enviar datos a una pagina sin usar un form??
Responder
J o r g e C a p e r o t e dice:
Hola Roberto,
Para lo que necesitas tal vez te venga bien hacer un nico formulario con varios
submit, esto es, crear un submit al final del formulario que lleve al action
predeterminado y otro boton (button) en el cual luego llamas con javascript a otro
action y manejas los datos que quieras.
Para que te quede ms claro te dejo un enlace en el cual lo explica bastante
bien:http://stackoverflow.com/questions/942772/html-form-with-two-submitbuttons-and-two-target-attributes
Espero que te sirva de ayuda y gracias por visitar el blog!
Responder
M a r i o G o n z a l e s dice:
7.
J o r g e C a p e r o t e dice:
Hola Mario, me parece bien tu crtica pero creo que no encaja con el contenido del
artculo, est claro que hay mtodos de conexin a base de datos como PDO (que
puedes ver en mi siguiente artculo:http://soyautodidacta.com/2013/04/conexion-abase-de-datos-en-php-con-pdo/) que supongo que no habrs visto en mi blog,
aparte de necesitar una versin superior a 5.1 de PHP, y puede que te sorprenda
pero no todo el mundo dispone de ella an.
Podra usar un modelo-vista-controlador como Symfony2 (en el que estoy
empezando
a
desarrollar
un
hilo
de
artculos
con
manualeshttp://soyautodidacta.com/2013/05/frameworks-php-symfonyempezando/) o CodeIgniter (que estoy escribiendo artculos ya, por lo que an no
estn subidos).
Se que existen mtodos para utilizar jQuery, de hecho yo los utilizo, pero la alta
demanda de ste tipo de artculos me ha llevado a hacerlo as precisamente.
Supongo que he resuelto todas tus inquietudes y dudas, y por ltimo, no creo que
vieras muchas webs con funcionalidades de Ajax en la poca de los 90.
Un saludo y gracias por visitar mi Blog!
Responder
8.
[] a ver otro mtodo ms para insertar datos en una base de datos MySQL, hace
unos meses vmos como insertar datos en MySQL con Ajax y PHP. Todo esto viene
por la necesidad de introducir datos en nuestra base de datos sin tener que []
Responder
9.
G i l b e r t h dice:
1 de agosto de 2013 a las 19:21:50
las modificaciones pero como son inputs hechos en ajax nose como obtener el
value de ellos y para ponder guardarlo. Gracias.
Responder
J o r g e C a p e r o t e dice:
Hola Gilberth,
Gracias por visitar mi Blog. Cuando creas inputs por ajax, ests creando un cdigo
HTML que ser pasado su value a otra pgina al hacer submit, si yo modifico los
campos de los inputs creados, al pasarlo por POST a otra pgina php tiene que
recoger los values que estn en los inputs en el momento de hacer submit, si
quieres insertar datos desde la misma pgina puedes usar ste mtodo para
insertarlo o hacerlo con jQueryhttp://soyautodidacta.com/2013/08/insertar-datosjquery-php-en-mysql/
Los values tomarn el valor cuando se hace submit al form
Saludos.
Responder
10.
J o dice:
Es muy normal que utilicemos MySQL a travs de las paginas php y para administrar
nuestras bases de datos ocupemos un programa como phpMyAdmin, pero en alguna ocasin
podramos no tener estas opciones por esto es necesario tener alguna nocin de como
hacerlo a travs de la linea de comandos. Como la mayora debe saber la lnea de comandos
se abre ejecutando el archivo cmd.exe. Ahora para acceder al servidor debemos conocer
en que direccin o carpeta se encuentra ubicado. En mi caso est
en C:\xampp\mysql\bin>.
view plainprint?
1.
2.
Enter password:
3.
mysql>show databases
4.
>;
5.
mysql>use test
6.
Database changed
7.
8.
9.
10. mysql>quit
11. Bye
12. C:\xampp\mysql\bin>exit
En este ejemplo utilizando la base de datos "test" se cre la tabla "demo" que contiene en
campo "nombre". Para ms informacin leer el manual de referencia MySQL
CREAR UNA TABLA A TRAVS DE PHPMYADMIN
Usar phpMyAdmin es ms simple, la administracin de las bases de datos se genera a
travs de una interfaz de usuario que es fcil de entender y de accionar.
Para crear una tabla seleccionamos la base de datos; agregamos el nombre, nmero de
columnas y presionamos continuar. Luego configuramos el tipo de datos de cada columna
como el nombre, tipo y longitud.
INSERTAR DATOS HACIA MYSQL USANDO CDIGO PHP
Teniendo creada la base de datos y su tabla necesitamos un formulario con los datos que
deseemos capturar. Obviamente los campos del formulario deben ser concordantes con los
campos de la tabla. Es importante notar que el formulario incluye un input de
tipo hidden que es muy til para relacionar los comentarios con el artculo o noticia que se
comenta.
view plainprint?
1.
<h3>Comentarios</h3>
2.
3.
4.
Nombre<br>
5.
6.
7.
Email<br>
8.
9.
10. Comentario<br>
11. <textarea id="mensaje" name="mensaje" placeholder="Mensaje"
12. title="Ingresa tu comentario" required=""></textarea>
13. <input id="submit" type="submit" name="submit" value="Enviar" />
14. </form>
El archivo encargado de insertar los datos del formulario en la base de datos est
definido en el atributo action, llamado "comentarios.php" y su cdigo es el siguiente:
view plainprint?
1.
<?php
2.
function Conectarse()
3.
{ if (!($link=mysql_connect("n_host","n_usuario","password")))
4.
5.
6.
if (!mysql_select_db("nombre_based",$link))
7.
8.
9.
exit(); }
return $link;
10. }
11.
$id_articulo = $_POST["id_articulo"];
12.
$ip = $_SERVER['REMOTE_ADDR'];
13.
$url = $_SERVER['HTTP_REFERER'];
14.
// ajusta la hora
15.
16.
17.
$nombre = $_POST["nombre"];
18.
$email = $_POST["email"];
19.
20.
$link = Conectarse();
21.
//devuelve el ultimo comentario, muy necesario para evitar doble envio de los datos
22.
23.
$link);
24.
while($row_a = mysql_fetch_row($verif)){
25.
$ultimo_com = $row_a[7];
26.
27.
28.
29.
30.
31.
32.
$link);
33.
34.
?>
Este es un mtodo para el envo de datos, existen otra formas pero creo que esta es la
ms usual y simple. Para mayor informacin pueden acceder al manual de PHP. Espero les
guste e interese el tema, se agradecen los comentarios o dudas, aprender y compartir lo
que uno sabe es el objetivo de este sitio.
Google +58 7 5
Anuncios / Ads
COMENTARIOS
oscar ledesma dice
Hola estoy en mi etapa de aprendizaje con html5 y php y necesito hacer un formulario
para insertar datos y que me muestre un resultado ingresando la id de la persona,
agradezco toda su ayuda.
Publicado el 18-03-2014 03:54:38