bonjour à tous,
voilà j'ai un petit problème avec un script qui fait appel à la fonction modulo! en fait je veux que ce script sélectionne de façon aléatoire un certain nombre d'enregistrement (selon la valeur du modulo) et qu'il mette à jour cette dernière!
lorsque le modulo est égal à 0 ou à 1 je veux qu'il sélectionne 2 enregistrements et lorsqu'il est égal à 2 je veux qu'il en sélectionne 1 mais là ce n'est pas ce que j'obtiens! le script me parrait correct mais je me tourne vers vous pour le vérifier
voici mon script:
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
50
51
52
53
 
<?
//initialiser les numéros de groupe
 
for ($gpe=1; $gpe<=3; $gpe++)
{
 
if (($$gpe%3==0) OR ($gpe%3==1))
{
//alors on va retirer 2 enregistrements
 $conn=mssql_connect('host','login','pwd);
   mssql_select_db('[db]',$conn);
  //on sélectionne 2 enregistrements 
   $sql = "select top 2 * from table where champ1='0' order by NEWID();"; 
    $req = mssql_query($sql,$conn) or die('Erreur sql '.$sql);
    
    while ($result = mssql_fetch_assoc($req))
    {
    //on met à jour la table 
    $sql1= "update table set champ1='1' where num_card='".$result['champ2']."'";
    $req1 = mssql_query($sql1,$conn) or die('Erreur sql '.$sql1);
    
    //on insère les résultats dans la table2
    $sql2= "insert into table2(champ champ1, champ2) values ('".$result['champ2']."', 'xx', 0);";
    $req2 = mssql_query($sql2,$conn) or die('Erreur sql '.$sql2);
    }//fin récupérer 2 records

}

if ($val%3==2)
{//on retire 1 record
 $conn=mssql_connect('host','login','pwd');
   mssql_select_db('[bd]',$conn);
  //on sélectionne 1 enregistrement 
   $sql = "select top 1 * from table where champ1='0' order by NEWID();"; 
    $req = mssql_query($sql,$conn) or die('Erreur sql '.$sql);
    
    while ($result = mssql_fetch_assoc($req))
    {//récupérer 1 record
    //on met à jour la table
    $sql1= "update table set champ1='1' where num_card='".$result['champ2']."'";
    $req1 = mssql_query($sql1,$conn) or die('Erreur sql '.$sql1);
    
    //on insère les résultats dans la table 2
    $sql2= "insert into table2(champ, champ1, champ2) values ('".$result['champ2']."', 'xx', 0);";
    $req2 = mssql_query($sql2,$conn) or die('Erreur sql '.$sql2);
    }//fin récupérer 1 record

}

}
header ("Location: ok.php");
?>
voilà j'espère que c'est claire
merci