Précédent   Forum du club des développeurs et IT Pro > PHP > PHP & SGBD > PHP & SQL-Server
PHP & SQL-Server Forum d'entraide sur SQL-Server avec PHP. Avant de poster -> FAQ SQL-Server
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 19/04/2011, 13h01   #1
zimeau
Invité de passage
 
Inscription : mars 2007
Messages : 33
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 33
Points : 4
Points : 4
Par défaut SQLSRV et MultipleActiveResultSets

Bonjour,
suite à la suppression de la fonction mssql avec PHP 5.3, je m'amuse a refaire tout mon code grâce aux drivers SQLSRV. j'ai donc refait mon code ainsi :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
$servername = "SERAPP";
$user = "sa";
$pass = "xxx";
$data = "suivheure";
$connectionInfo = array("UID" => $user, "PWD" => $pass, "Database" => $data, 'MultipleActiveResultSets'=> true);
$connect = sqlsrv_connect( $servername, $connectionInfo);
$requetesql = "SELECT max(Date) AS Date, Visa FROM [suivheure].[dbo].[EvenementUtils] WHERE IDMachine='".$Machine."' AND IDEvenement = '15' GROUP BY Visa";
$resultatsql = sqlsrv_query($connect ,$requetesql);
while ($ligne = sqlsrv_fetch_array($resultatsql)){
  $VisaDernierUtils = $ligne['Visa'];
  echo $ligne['Visa'];
  $DateDernierUtils = $ligne['Date'];
  $requetesql2 = "SELECT max(Date) AS Date FROM [suivheure].[dbo].[EvenementUtils] WHERE IDMachine='".$Machine."' AND IDEvenement = '16' And Visa = '".$VisaDernierUtils."'";
  $resultatsql2 = sqlsrv_query($connect, $requetesql2);
  if ($resultatsql2 == false){
    $DateDernierUtilsDéco = 0;
    echo "resultatsql2 = false<br>";
  }
  else{
    $ligne2 = sqlsrv_fetch_array($resultatsql2);
    echo "resultatsql2 != false <br>";
    $DateDernierUtilsDéco = $ligne2['Date'];
  }
  if ($DateDernierUtils > $DateDernierUtilsDéco){
    $requetesql3 = "SELECT Interim, MOI FROM [suivheure].[dbo].[EvenementUtils] WHERE IDMachine='".$Machine."' AND IDEvenement = '15' And Visa = '".$VisaDernierUtils."'";
    echo $requetesql3."<br>";
    if( sqlsrv_query( $connect, $requetesql3))
    {
       echo "Statement executed.\n";
       echo "resultatsql3 != false<br>";
       $ligne3 = sqlsrv_fetch_array($resultatsql3);
    }
    if ($ligne3['Interim'] == true){
        $ListeOperat[]=$VisaDernierUtils." (Intérimaire)";
    }
    elseif ($ligne3['MOI'] == true){
        $ListeOperat[]=$VisaDernierUtils." (MOI)";
    }
    else{
      $ListeOperat[] = $VisaDernierUtils;
    }
  } 
  else
  {
    echo "resultatsql3 = false<br>";
    echo "Error in statement execution.\n";
    $DateDernierUtilsDéco = 0;
    die( print_r( sqlsrv_errors(), true));
  }
}
Comme vous le constatez, j'ai une requêtes multiple, ce qui ne posait aucun problème avec mssql. depuis SQLSRV, j'ai cet erreur :
Citation:
"Array ( [0] => Array ( [0] => IMSSP [SQLSTATE] => IMSSP [1] => -44 [code] => -44 [2] => The connection cannot process this operation because there is a statement with pending results. To make the connection available for other queries, either fetch all results or cancel or free the statement. For more information, see the product documentation about the MultipleActiveResultSets connection option."
j'ai donc cherché les info concernant le MultipleActiveResultSets, j'ai vu qu'il était pas actif par défaut, ce qui explique que j'ai mis
Code :
"'MultipleActiveResultSets'=> true"
dans mon
.
Malgré ça, mon erreur est toujours présente. quelqu'un aurait une solution, ou quelque chose pour me guider?
Merci!
zimeau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2012, 15h03   #2
m1koo
Invité régulier
 
Homme
Développeur Web
Inscription : décembre 2011
Messages : 15
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : France, Allier (Auvergne)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : décembre 2011
Messages : 15
Points : 7
Points : 7
Par défaut Même problème

Bonjour,
je me permets de relancer ce vieux sujet puisque j'ai le même problème que Zimeau et que je ne trouve aucune réponse sur n'importe quel site.
A tout hasard, si vous avez trouvé une solution, je vous serais reconnaissant que vous m'en fassiez part

Merci d'avance
m1koo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 12h00.


 
 
 
 
Partenaires

Hébergement Web