begin process at 2012 02 14 03:48:06
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Réseau & Internet

 > 

Autre

 > 

Problème Array


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème Array

mercredi 7 janvier 2009 à 00:00:28 | Problème Array

naruto uzumaki

Hello tout le monde j'ai une question ... Je fais un robot (en local) pour ma webtv. Son rôle est de scanner le serveur stream et de regarder si il y a des doubles adresses ip . Par contre faut toujours un poil dans le potage. Alors le voilà :
Warning: Invalid argument supplied for foreach() in C:\server\web\apps\botcast\index.php on line 72

Je comprends pas car bon les array je suis pas du tout ami encore avec eux :s

Voilà mon script :


<?php
//  --------------------------------
// |   BOTCAST POWERED BY FoX-Cyd   |
// |       Exclu pour 2ZikTV        |
// |       wwww.2ziktv.new.fr       |
//  --------------------------------

// Informations concernant le serveur:

$bc_host = 's1.zilac.com';  // Adresse IP du serveur shoutcast.
$bc_port = '8500';          // Port du serveur shoutcast.
$bc_pass = 'zikzik2trot';   // Mot de passe du serveur shoutcast.
$refresh =  5;              // Temps entre chaque actualisation (en secondes).
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="refresh" content="<?php echo $refresh ; ?>">
<title>BotCast :: Powered by FoX-Cyd</title>
</head>

<body>
Bienvenue sur BotCast! Ce bot est automatique [Refresh toutes les <?php echo $refresh ; ?> secondes].
<br /><br />
<?php
if (! $sock = @fsockopen($bc_host, $bc_port, $num, $error, 3))
 echo '[ERROR] Le serveur shoutcast est déconnecté !';

 else{
  include('shoutcast.php');
  $tab_infos = shoutcast_stats($bc_host, $bc_port, $bc_pass);
if ($tab_infos)
    {
        if ($tab_infos['http_code'] == '200')
        {
        echo '-------------------------------------------------------------------<br/>';
            if ($tab_infos['streamstatus'])   
            {
                echo 'Etat du Stream : <b>Diffusion en cours.</b><br/>';
                echo 'Nom du Stream : '.$tab_infos['servertitle'].'<br/>';
                echo 'Nombre d\'auditeurs : '.$tab_infos['currentlisteners'].'/'.$tab_infos['maxlisteners'].' [max: '.$tab_infos['peaklisteners'].']<br />';
                echo 'Titre en cours : '.$tab_infos['songtitle'].' ['.$tab_infos['bitrate'].'kbps]<br />';
                            }
            else
            {                           
                echo 'Etat du Stream : <b>Aucune Diffusion en cours.</b><br/ >';
                }
        echo '-------------------------------------------------------------------<br/>';
                if (array_key_exists('auditeur', $tab_infos))
            {
    echo 'Liste des auditeurs :<br/>';
               
               
                foreach($tab_infos['auditeur'] as $id => $valeur)
                    echo '[#' . $id . '] <b>' . $valeur['hote'] . '</b> [Durée:'.$valeur['temps'].'s]<br />';
                   
        //Systeme ban
function TrimTab($txt){
 return trim($txt);
}

// on recupere le contenu du fichier "except.txt" et on place résultat dans un array()
$except = file_get_contents('except.txt');
$list_except = explode("\n", $except);
$list_except = array_map('TrimTab', $list_except);

// ici pour nos tests (en tout cas mettre la liste de tes IP dans un array())
 echo '-------------------------------------------------------------------<br/>';
 
foreach($valeur['hote'] as $cle){
 if($cle > 1){
  if(!in_array($cle, $list_except)){
   echo '<font color="red"><b>[DOUBLE IP]</b></font> L\'adresse <b>'.$cle. '</b> regarde deux fois, utilisateur bannie automatiquement !<br />';
  }
  else{
   echo '<font color="red"><b>[DOUBLE IP]</b></font> L\'adresse <b>'.$cle.'</b> est dans l\'exeption des bannissement !<br />';
  }
 }
 else{
  echo '';
 }
}
       //Fin systeme ban
            }

        }
        else
            echo '[ERROR] Le mot de passe admin est invalide !';
    }
    else
        echo '[ERROR] Impossible de se connecter !';
 
 
   fclose($sock);
 }
 echo '-------------------------------------------------------------------<br/>';
 ?>
</body>
</html>



Qui peux m'aider car là je bloque vraiment :s Merci d'avance ! :D
FoX-Cyd
mercredi 7 janvier 2009 à 00:52:57 | Re : Problème Array

kohntark

Membre Club
Salut,

Je n'ai pas regardé de près le code.
Ton erreur semble indiquer que $tab_infos['auditeur'] n'est pas définie

Essaie de déboguer en mettant :
print_r($tab_infos['auditeur']);
juste avant :
foreach($tab_infos['auditeur'] as $id => $valeur)

Peut être un pb avec la fonction shoutcast_stats


Kohntark -

mercredi 7 janvier 2009 à 10:25:42 | Re : Problème Array

Teclis01

Essaye ça...
*se rapelle de malalam qui lui disait de boucler sur des array qui contiennent qqch >_<*
if(!empty($valeur['hote'])){
    foreach($valeur['hote'] as $cle){
    ...
    }
}

Il vaut mieux poser une question et passer pour bête que le rester toute sa vie

 Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro



Cette discussion est classée dans : infos, bc, tab, array, echo


Répondre à ce message

Sujets en rapport avec ce message

aide [ par lioyan ] salut à tous, je suis débutant en php alors pour ma formation j'ai trouvé un exo sur le net qui dit:    Faites un script qui affiche la liste des étud Construire un tableau associatif avec un fichier externe [ par phsautreau ] Bonsoir, Voilaà j'ai un fichier texte externe nommé identif_ens.txt et contenant les login et mots de passe permettant de se logguer à une page, ce fi Recuperer valeur d'un input image... [ par DjChat ] Bonjour a tous, je suis entrain de crée un formulaire avec des images clickable, j'aurai voulu recuperé le nom de la personne a qui est la photo, donc Explode HELP!! [ par EricLeRouge ] Bonjour, toujours pour me meme but (oui car c'est mon 3eme post en l'espace de 3 jours) à savoir l'exploitation de documents words (et je présice que Probleme d'accent avec IE [ par warcat ] Tout d'abord bonjour à tous, c'est mon premier message sur ce forum, j'espère que je post ce message où il faut et que je ne vais pas écrire de grosse Liste déroulante php/javascript [ par zabroska ] Bonjour,voila mon probleme :J'ai deux listes déroulantes et je souhaite que la deuxième se remplisse en fonction du choix dans la première.J'ai deja t Enregistrer des résultats ARRAY dans des variables séparée... [ par Sniark ] Bonjour à tous,Dans un formulaire, j'ai des SELECT multiple sous forme de listes, dont le contenu est le résultat d'une requête sur ma base de données mysql_fetch_array [ par ateber ] Bonjour,Je suis une étudiante en informatique. J'ai crée un forum sur un site et qui fonction bien mais aujourd'hui sur local je n'arrive pas affichée mettre une Array dans une zone de base de données est-ce autorisé ? [ par surotout ] Bonjour,soit un programme maj.phpet le create de la base de donnéesLa mise à jour s'effectue ( une zone numerique évolue)pourtant je ne sais pas relir besoin d'aide [ par papashultz ] Bonjour, je suis débutant en PHP et je souhaite trier un tableau, mais après l'utilisation de "natcasesort" nom tableau n'est plus considéré comme te


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,888 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales