Tema: FAQ's de PHP
Ver Mensaje Individual
  #148 (permalink)  
Antiguo 06/06/2005, 14:12
Avatar de xcars
xcars
 
Fecha de Ingreso: mayo-2005
Ubicación: El Salvador
Mensajes: 753
Antigüedad: 18 años, 11 meses
Puntos: 4
Tema: Conexion a BD
Pregunta: ¿Como puedo ejecutar procedimientos almacenados desde php hacia MS SQL?

Respuesta:
Pues lo unico que se necesita es ejecutar un par de instrucciones del tipo mssql_xxxx y listo, les dejo un ejemplo.

Código PHP:
<?
$msuscriptor_numero
='79714306';
$msuscriptor_nombre="";
$db_conexionmssql_connect(hostuserpass) or die("No se pudo conectar a la Base de datos");
mssql_select_db("base de datos") or die(mssql_error());

   
$stmt=mssql_init("buscarXnumero",$db_conexion); //buscar por numero es el nombre del procedimiento almacenado 
[b]//aqui agregados los parametros de entrada[/b]
   
mssql_bind($stmt,"@suscriptor_numero",$msuscriptor_numero,SQLINT4);

[
b]//aqui agregamos los parametros de salida[/b]
mssql_bind($stmt,"@suscriptor_nombre",&$msuscriptor_nombre,SQLVARCHAR,TRUE,False,50);

[
b]//aqui agregamos el parametro return del procedimiento almacenado[/b]

   
mssql_bind($stmt,"RETVAL",&$filas,SQLINT4);

[
b]aqui ejecutamos el procedimiento almacenado [/b]
   
mssql_execute($stmt);
    echo 
"<h2>numero ".$msuscriptor_numero." Nombre ".$msuscriptor_nombre." </h2>";
   
mssql_close($db_conexion);
?>
bueno basicamente con la instruccion INIT inicializamos la llamada al procedimiento almacenado.
con bind agregamos nuestros parametros, ojo, si son de entrada, enviamos nuestras variables PHP directamente mssql_bind($stmt,"@suscriptor_numero",$msuscriptor _numero,SQLINT4);
pero si nos va a retornar un valor, debemos pasarlo por referencia mssql_bind($stmt,"@suscriptor_nombre",&$msuscripto r_nombre,SQLVARCHAR,TRUE,False,50);

dudas o comentarios hstanleycrow AT hotmail PUNTO com

Última edición por xcars; 22/06/2008 a las 23:03