Foros del Web » Programando para Internet » PHP »

Php ubuntu hacia ms sql

Estas en el tema de Php ubuntu hacia ms sql en el foro de PHP en Foros del Web. Hola. Amigos estoy en problemas, necesito ejecutar un stored procedure desde mi php instalado en linux. He leido harto sobre el tema, me funciona hacer ...
  #1 (permalink)  
Antiguo 09/04/2009, 08:55
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 19 años, 6 meses
Puntos: 0
Php ubuntu hacia ms sql

Hola.

Amigos estoy en problemas, necesito ejecutar un stored procedure desde mi php instalado en linux. He leido harto sobre el tema, me funciona hacer un select, pero no hay caso con ejecutar el procedimiento, inclusive me he creado un nuevo procedure y nada.... me envia el error:

Código:
Warning: mssql_execute() [function.mssql-execute]: stored procedure execution failed in /home/mgonzalez/proyectos/webpos/conecta_sqlserver_1.php on line 32

Warning: mssql_fetch_row(): supplied argument is not a valid MS SQL-result resource in /home/mgonzalez/proyectos/webpos/conecta_sqlserver_1.php on line 34
Answer:
RETVAL = 0 ; intval = ; floatval = ; string =
el stored lo saque de php.net

Código:
CREATE PROCEDURE [procedure]
(
   @sval varchar(50) OUTPUT,
   @intval int OUTPUT,
   @floatval decimal(6,4) OUTPUT
) AS

if @intval is null
    select '@intval is null' as answer
else    
    select '@intval is NOT null' as answer

set @sval='Hello ' + @sval
set @intval=@intval+1
set @floatval=@floatval+1

return 10
por ultimo el php

Código:
<?php
            $conn=mssql_connect("FAMILIA","SA","") or die("errror ");
            if ($conn) {
                mssql_select_db("creditos",$conn);
                $stmt=mssql_init("DBO.HOLA",$conn);             
               mssql_bind($stmt,"RETVAL",&$val,SQLINT4);
                $numero=11;
                $num2=2.1416;
                $palabra="Frank";
                mssql_bind($stmt,"@palabra",&$palabra,SQLVARCHAR,TRUE);
                mssql_bind($stmt,"@intval",&$numero,SQLINT4,TRUE);
                mssql_bind($stmt,"@floatval",&$num2,SQLFLT8,TRUE);
                $result=mssql_execute($stmt);
                mssql_execute($stmt);
                $arr=mssql_fetch_row($result);
                print ("Answer: " . $arr[0] . "<br>" );
                print ("RETVAL = $val ; intval = $ival ; floatval = $fval ; string = $sval");
                mssql_close($conn);
            }
            else print("ooops!");
?>
Atte.
MG
__________________
Dios es mas grande que tu problema :-)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:34.