elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [PHP-MYSQL] Como crear un sp en php?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [PHP-MYSQL] Como crear un sp en php?  (Leído 2,257 veces)
klaine

Desconectado Desconectado

Mensajes: 112



Ver Perfil WWW
[PHP-MYSQL] Como crear un sp en php?
« en: 1 Noviembre 2011, 02:03 am »

Hola estoy intentando crear un procedimiento almacenado desde php a mysql, que estoy haciendo mal?

Código
  1.  
  2. <html>
  3. <head>
  4. </head>
  5. <body>
  6.        <?php
  7.  
  8.        mysql_connect("localhost", "root", "sr388");
  9.  
  10.        $b=mysql_query("
  11. create procedure pedir(in strCodBicicleta varchar(255), in strCodPeticion varchar(255), in strCodUsuario varchar(255))
  12. begin
  13.  
  14. update bicicleta set estado='usando' where cod_bicicleta=strCodBicicleta;
  15.  
  16. insert into peticion(cod_peticion, usuario, fecha, hora)values(strCodPeticion, strCodUsuario, current_date, current_time);
  17.  
  18. end
  19. ");
  20.  
  21.        if($b){
  22.  
  23.            echo "funka";
  24.  
  25.        }else{
  26.  
  27.            echo "T_T";
  28.  
  29.        }
  30.  
  31.        ?>
  32. </body>
  33. </html>
  34.  
  35.  



Dejo las tablas bicicleta, peticion y usuario:

Código
  1.  
  2. create table usuario(
  3.  
  4. username varchar(255) not null primary key,
  5. permisos varchar(4) not null, -- 'ADM' o 'USER'
  6. e_mail varchar(255) not null
  7.  
  8.  
  9.  

Código
  1.  
  2. create table bicicleta(
  3.  
  4. cod_bicicleta varchar(255) not null primary key,
  5. estado varchar(6) not null -- 'usando' o 'libre'
  6.  
  7.  
  8.  

Código
  1.  
  2. create table peticion(
  3.  
  4. usuario varchar(255) not null references usuario(username),
  5. fecha date not null,
  6.  
  7.  
  8.  
  9.  

De antemano, gracias

PD: en la shell funka con el uso de delimiter


« Última modificación: 1 Noviembre 2011, 02:05 am por klaine » En línea

lnvisible


Desconectado Desconectado

Mensajes: 527



Ver Perfil
Re: [PHP-MYSQL] Como crear un sp en php?
« Respuesta #1 en: 1 Noviembre 2011, 02:26 am »

Esa función no está hecha para eso.

Si pinchas en el mismo código que has puesto te lleva aquí
http://uk.php.net/mysql_query

¿Ves que ponga algo de procedimientos? ¿no?, pues sí, lo pone ^^

Tienes que crear el procedimiento desde la shell y luego invocarlo, en la misma página hay un ejemplo.

Código
  1. <?php
  2.    //...
  3.    $rs = mysql_query('CALL sproc2(500)');
  4.    while (($row=mysql_fetch_assoc($rs))!==false) {
  5.        print_r($row);
  6.    }
  7.    mysql_free_result($rs);
  8.  
  9.    $rs = mysql_query('CALL sproc2(500)');
  10.    print mysql_error(); //the notorious 'command out of synch' message :(
  11.    while (($row=mysql_fetch_assoc($rs))!==false) {
  12.        print_r($row);
  13.    }
  14.    mysql_free_result($rs);
  15. ?>


En línea

klaine

Desconectado Desconectado

Mensajes: 112



Ver Perfil WWW
Re: [PHP-MYSQL] Como crear un sp en php?
« Respuesta #2 en: 1 Noviembre 2011, 02:34 am »

El problema que tengo es que quiero pasarle este sp a mis compañeros con los que estoy haciendo este trabajo, el procedimiento almacenado en la shell me funka así:

Código
  1.  
  2. delimiter '$$'
  3.  
  4. create procedure pedir(in strCodBicicleta varchar(255), in strCodPeticion varchar(255), in strCodUsuario varchar(255))
  5.  
  6. update bicicleta set estado='usando' where cod_bicicleta=strCodBicicleta;
  7.  
  8. insert into peticion(cod_peticion, usuario, fecha, hora)values(strCodPeticion, strCodUsuario, current_date, current_time);
  9.  
  10. $$
  11.  
  12. DELIMITER ';'
  13.  
  14.  

Pero mis compañeros no usan la shell, es mas, ni siquiera tienen el query browser, usan la gui de phpmyadmin, y por cierto, este code intenté meterlo en el querybrowser de mi instituto y no me funka, reformulo la pregunta, como puedo pasarle este sp a mis compañeros?, había pensado hacer un archivo.php que lo ejecuten y se les cree solo :P, pero veo que no se puede

Desde ya, agradeciendo sus respuestas

Saludos!
En línea

lnvisible


Desconectado Desconectado

Mensajes: 527



Ver Perfil
Re: [PHP-MYSQL] Como crear un sp en php?
« Respuesta #3 en: 1 Noviembre 2011, 15:47 pm »

Hay muchas funciones para eso, escoge la que más te guste, te dejo dos sugerencias:
http://php.net/manual/en/function.shell-exec.php
http://php.net/manual/en/function.system.php
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como crear pdf con datos de mysql???
PHP
girerovers 2 5,052 Último mensaje 12 Octubre 2009, 18:37 pm
por girerovers
Como crear hash alfanumérico autoincrementado en php y mysql?
PHP
WHK 3 7,431 Último mensaje 17 Octubre 2010, 16:18 pm
por Og.
Crear tabla usando como nombre el campo de otra MYSQL [Solucionado]
Bases de Datos
Graphixx 1 4,407 Último mensaje 1 Diciembre 2010, 06:48 am
por Graphixx
como crear una aplicacion de un sistema de bases de datos con MYSQL AB
Programación General
hack-4-life 2 5,416 Último mensaje 30 Diciembre 2010, 01:13 am
por hack-4-life
¿Cómo puedo crear un conteo infinito con PHP/MySQL/JS?
Desarrollo Web
Kryl0n 2 2,416 Último mensaje 15 Noviembre 2016, 17:01 pm
por [u]nsigned
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines