Portail PHP

Forum de discussion et d'aide au php

Vous n'êtes pas identifié.

Annonce

Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides.
FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans.
Proposez vos news : si vous avez un evenement à annoncer
le chat : venez discuter de php.
 

#1 18-12-2007 03:24:06

gemça
Membre
Date d'inscription: 18-12-2007
Messages: 3

calcul sur deux variable array dans une boucle for

Bonjour,

J'ai ce code qui fonctionne:

Code:

<?
//Ici trouver un moyen d'importer le fichier dans une variable $Fnm depuis un champs "parcourir" de la page web.. 
$Fnm = "CristalBleu.Master.Transmission";
// Et importer la variable $ecart (% d'ecart de mesure autorisé) depuis un champs de la page web
$ecart=50;

//------- traitement du fichier--------------
 
// la variable array contenat des valeur numériques $grp est générée

//-------acces à la base et la table et rapatriement des données-----------

//On se connecteOn va cherche la variable serialisée dans la colonne Data de $table

//-------comparaison des valeurs de la table vs celle générée si en haut-------

$score=0;
while($row = mysql_fetch_array($result)){
    $vise= unserialize($row["Data"]);
    echo "<hr>deserialisé:".$row["ID"]."<br>";
    echo "ecart=".$ecart."%<br>";
    if (sizeof($grp)==sizeof($vise)){
        for($i=0; $i<sizeof($vise);$i++){
            $ecartgrp[$i]=($ecart/100)*$grp[$i];
            $valgrpinf[$i]=$grp[$i]-$ecartgrp[$i];
            $valgrpsup[$i]=$grp[$i]+$ecartgrp[$i];
                echo "vise:". $vise[$i]."<br>";
                echo "grp:".round($grp[$i],3)."<br>";
                echo "ecartgrp:".$ecartgrp[$i]."<br>";
                echo "valgrpinf".$valgrpinf[$i]."<br>";
                echo "valgrpsup".$valgrpsup[$i]."<br>";
        }
    }
    else{
        echo "Le spectre de ".$row[Nom]." n'a pas été visé car il ne contenait pas le même nombre de données";
    }        
}
            
?>

par contre, si j'ajoute ce if() dans la boucle for (pour comparer les data de l'array $grp et l'array $vise), ca marche plus => page blanche a l'execution du script.

Code:

<?
//Ici trouver un moyen d'importer le fichier dans une variable $Fnm depuis un champs "parcourir" de la page web.. 
$Fnm = "CristalBleu.Master.Transmission";
// Et importer la variable $ecart (% d'ecart de mesure autorisé) depuis un champs de la page web
$ecart=50;

//------- traitement du fichier--------------
 
// la variable array contenat des valeur numériques $grp est générée

//-------acces à la base et la table et rapatriement des données-----------

//On se connecteOn va cherche la variable serialisée dans la colonne Data de $table

//-------comparaison des valeurs de la table vs celle générée si en haut-------

$score=0;
while($row = mysql_fetch_array($result)){
    $vise= unserialize($row["Data"]);
    echo "<hr>deserialisé:".$row["ID"]."<br>";
    echo "ecart=".$ecart."%<br>";
    if (sizeof($grp)==sizeof($vise)){
        for($i=0; $i<sizeof($vise);$i++){
            $ecartgrp[$i]=($ecart/100)*$grp[$i];
            $valgrpinf[$i]=$grp[$i]-$ecartgrp[$i];
            $valgrpsup[$i]=$grp[$i]+$ecartgrp[$i];
                echo "vise:". $vise[$i]."<br>";
                echo "grp:".round($grp[$i],3)."<br>";
                echo "ecartgrp:".$ecartgrp[$i]."<br>";
                echo "valgrpinf".$valgrpinf[$i]."<br>";
                echo "valgrpsup".$valgrpsup[$i]."<br>";
if (($grp[$i]-$ecartgrp[$i] <= vise[$i]) and (vise[$i] <= $grp[$i]+$ecartgrp[$i])){ 
            score++;
            }
        echo "score:". $score."<br>";
        }
    }
    else{
        echo "Le spectre de ".$row[Nom]." n'a pas été visé car il ne contenait pas le même nombre de données";
    }        
}
            
?>

Je ne sais absolument plus quoi faire..
Merci pour vos aides

Hors ligne

 

#2 18-12-2007 05:03:27

lolo3129
Membre
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 512
Site web

Re: calcul sur deux variable array dans une boucle for

hello,

je te conseille de rajouter des parenthèses autour de tes calculs dans la condition du if.

++

Hors ligne

 

#3 18-12-2007 11:04:30

gemça
Membre
Date d'inscription: 18-12-2007
Messages: 3

Re: calcul sur deux variable array dans une boucle for

ca marche merci..

Dernière modification par gemça (18-12-2007 11:09:06)

Hors ligne