2017-06-06 2 views
0

J'utilise MS SQL Server 2008 comme base de données et j'ai créé une procédure stockée qui ressemble à ceci.Retour des données en utilisant la procédure stockée dans AdoDB PHP

USE [DB_Question] 
GO 

SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
ALTER Procedure [dbo].[Check_ExamID] 
@ExamID NVARCHAR(MAX) 
as 
SELECT * FROM TBL_ExamTimer WHERE ExamID = @ExamID 

et voici mon code PHP qui suppost être la cible est d'afficher les données dans mon site PHP en utilisant des critères aussi.

<html> 
<head> 

</head> 
<body> 
<?php 

    include('config.php'); 
    include('adodb/adodb.inc.php'); 
    $db = ADONewConnection($dbdriver); 
    $db->Connect($dsn, $username, $password); 

    $procedure = $db->prepareSp('Check_ExamID'); 
    if (!$procedure) 
    die ('Invalid or inaccessible stored procedure name'); 

    $parameter1Name = '@ExamID'; 
    $ok = $db->inParameter($procedure,$parameter1Name,'1234'); 
    $result = $db->execute($procedure); 


?> 
</body> 
</html> 

Je suis en train d'afficher les données où ExamID [email protected] ou 1234 pour PARAM @ExamID

Mon objectif ici est d'utiliser ma procédure stockée pour sélectionner des données dans ma table et le retourner dans mon fichier php mais nothings événement. TYSM

Répondre

0

En premier lieu, les paramètres doivent être des chaînes passés par référence, donc la syntaxe correcte est:

$parameter1Name = '@ExamID'; 
$parameter1Value = '1234'; 

$ok = $db->inParameter($procedure,$parameter1Name,$parameter1Value); 
$result = $db->execute($procedure);