Bonjour,
malgré les nombreux tutos et pages de forum traitant de mon pb, je n'arrive pas à le résoudre.

Je cherche simplement à vérifier qu'une entrée existe dans une base sqlserver 2005, si elle n'existe pas, je la crée, si elle existe je la modifie.

Alors voila j'ai beau essayer dans tous les sens mais a chaque fois, soit il m'en crée une nouvelle tout le temps, soit il ne fait rien.

La en l'occurence il m'en crée une nouvelle tout le temps.
Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
//Partie Instant_Table: 
        // On verifie si le serveur existe deja 
        $return1= NULL; 
 
        $query = "    SELECT COUNT(*) FROM Instant_Table WHERE (server_id = '$server')"; 
 
        if(isset($query)){ 
            try { 
                $return1 = $bdd->query($query); 
            } catch(PDOException $pdoE) { 
                echo '<br>ERREUR PDO:<br>'.$pdoE -> getMessage(); 
            } catch(Exception $e) { 
                echo '<br>AUTRE ERREUR:<br>'.$e -> getMessage(); 
            } 
        }else{}; 
 
            while ($donnees = $return1->fetch()) {         
                echo 'la valeur de return1 est :'.mssql_num_rows($return1).'!</br>'; 
            }; 
 
 
 
        if(mssql_num_rows($return1) > 0){ 
//si le serveur y est. 
        // On modifie seulement les champs Status, cat, comingback et type de pause.     
            $req = $bdd->prepare("UPDATE Instant_Table SET server_id = :server_id, cat = :cat, status = :status, paused_time =   aused_time WHERE server_id = '$server'")or die(print_r($req->errorInfo())); 
            $req->execute(array( 
                'server_id' => $server, 
                'cat' => $cat, 
                'status' => $statut, 
                'paused_time' => $duree, 
                // 'coming_back' => $back, 
            ))or die(print_r($req->errorInfo())); 
            echo "le serveur est dans la liste : on a modifié un champ"; 
        } 
 
        else{         
        // Si le server n'est pas dans la liste, On ajoute une entrée dans la table Instant_Table 
            $req = $bdd->prepare('INSERT INTO Instant_Table(server_id, cat, status, paused_time) VALUES(:server_id, :cat, :status,   aused_time)')or die(print_r($req->errorInfo())); 
            $req->execute(array( 
                'server_id' => $server, 
                'cat' => $cat, 
                'status' => $statut, 
                'paused_time' => $duree, 
                //'coming_back' => $back, 
            ))or die(print_r($req->errorInfo())); 
            echo "le serveur n'est pas dans la liste : on a crée une nouveau champ </br>";             
        };
Merci de prendre la peine de m'aider smile