IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

erreur de syntaxe dans la déclaration d'une variable


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Points : 13
    Points
    13
    Par défaut erreur de syntaxe dans la déclaration d'une variable
    Bonjour j'essaie de faire fonctionner ce code mais j'ai l'erreur suivante:
    Parse error: syntax error, unexpected T_VAR in /var/www/2.php on line 40
    voici mon code,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
         while ($donnees = mysql_fetch_array($start))
          {
            $ipv4=intval($donnees['IPv4']); 
            $ipv6=intval($donnees['IPv6']);
            $temps=addslashes($donnees['Date']);
            var yValue1 = ipv4;   // ici l'erreur
            var yValue2 = ipv6;
            var date = new Date($temps);
          }
        ?>
    merci beaucoup

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 625
    Points : 822
    Points
    822
    Par défaut
    Hello,

    Vu la forme, serais tu en train d'essayer de générer du Javascript avec PHP ?
    Pourfendeur de singletons en croisade

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Points : 13
    Points
    13
    Par défaut
    oui les balises PHP sont entourées de balises scripts

  4. #4
    Membre à l'essai
    Inscrit en
    Septembre 2010
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 15
    Points : 19
    Points
    19
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    while ($donnees = mysql_fetch_array($start))
    {
    $ipv4=intval($donnees['IPv4']); 
    $ipv6=intval($donnees['IPv6']);
    $temps=addslashes($donnees['Date']);
    $yValue1 = $ipv4; // ici l'erreur
    $yValue2 = $ipv6;
    $date = new Date($temps);
    }
    ?>

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 625
    Points : 822
    Points
    822
    Par défaut
    Je suis pas certain que ce que je vais écrire va être clair, mais bon.

    PHP ne communique pas avec JS. Les scripts JS s'exécutent sur le client (navigateur web du visiteur) lorsque PHP a fini de s'exécuter sur le serveur.

    Du point de vue de PHP, tout ce qu'il renvoie au navigateur du client n'est que du texte. Si tu veux générer du JS, tu procede de la même manière que si tu voulais générer du HTML. Il n'y a aucune différence pour PHP.

    par ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    while ($donnees = mysql_fetch_array($start))
    {
    $ipv4=intval($donnees['IPv4']);
    $ipv6=intval($donnees['IPv6']);
    $temps=addslashes($donnees['Date']);
    printf('var yValue1 = %s;', $ipv4);
    printf('var yValue2 = %s;', $ipv6);
    printf('var date = new Date(%s);', $temps);
    }
    L'utilisation de printf n'est pas obligatoire, tu pourrais simplement utiliser echo et de la concaténation. C'est juste affaire de goût personnel
    Pourfendeur de singletons en croisade

  6. #6
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Points : 13
    Points
    13
    Par défaut
    Mreic beaucoup, je vais tester tous ça

  7. #7
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Points : 13
    Points
    13
    Par défaut
    ok maintenant j'ai un autre probleme:
    dans mon script je dois définir les valeurs sur mes axes (il s'agit dun graphe) avec une valeur max et une autre min. quand je met $min et $ max àdes valeurs bien définies, ca marche mais quand j'essaie de récupérer ces valeurs depuis une base de données elles ne sont pas chargée!!

    voilà le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     <?php
                             $visibility=mysql_query("SELECT min(IPv4), max(IPv4) from Prefix_Count_History");
                            while ($donnee = mysql_fetch_array($visibility))
                              {
                                 $min = intval($donnee[1]); 
                                 $max = intval($donnee[2]);      
                              }
                                visibleMinimum: $min;   
                                 visibleMaximum: $max; 
                             ?>
    merci

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Le premier index c'est 0 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $visibility=mysql_query("SELECT min(IPv4), max(IPv4) from Prefix_Count_History");
    $donnee = mysql_fetch_array($visibility))
    $min = intval($donnee[0]); 
    $max = intval($donnee[1]);      
    echo 'visibleMinimum: '  . $min;   
    echo 'visibleMaximum: ' . $max; 
    ?>
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Points : 13
    Points
    13
    Par défaut
    merci beaucoup ça marche très bien

  10. #10
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Points : 13
    Points
    13
    Par défaut
    concernant ce bout de code, j'ai l'erreur suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_fetch_array() expects parameter 1 to be resource, boolean given in /var/www/t.php on line 98
    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
    <?php
     
                                          while ($donnees = mysql_fetch_array($as))
                                        {
                                           $peer_as = intval($donnees['Autonomous_System']);
                                           $in_updates_query = mysql_query("select IN_Updates from Bgp_Peers where Autonomous_System=
                                                                                $peer_as");
                                           $total_in_updates=0;
                                            while ($donnees = mysql_fetch_array($in_updates_query))
                                                 {
                                                    $in_updates=intval($donnees['IN_Updates']);
                                                    $total_in_updates= $total_in_updates + $in_updates;
                                                 }                                     
                                            $received.= "[".$peer_as.", ".$total_in_updates."],"; 
                                        }
                                      echo $received;                            
                                    ?>
    comment régler ce problème?

  11. #11
    Expert éminent sénior
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Points : 16 545
    Points
    16 545
    Billets dans le blog
    12
    Par défaut
    Salut,

    cela veut simplement dire que le résultat du code de la variable $as ne correspond pas au type attendu.
    En d'autres termes la requête stocké dans $as a échoué

  12. #12
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Points : 13
    Points
    13
    Par défaut
    en fait, en testant la requête en ligne de commandes je me suis apperçue que j'ai mal tapé le nom de la colonne ce qui a mené à cette erreur.

    maintenant, j'ai une table SQL qui a cette forme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    adresse IP   système  nombre de mise à jour
    10.0.0.0       65030     5435425
    11.0.0.0       65050      646546
    12.0.0.0       65050      546363
    13.0.0.0       65050      5675
    je veux determiner le nombre total de MAJ pour chaque système
    j'ai écrit alors ce bout de code, mais le resultat retourné est faux (il y'a bien un affichage mais le resultat calculé est éronné

    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
     series: [
                                {
                                 title: 'IN_Updates',
                                 type: 'column',
                                 data: [<?php
                                        mysql_data_seek($as, 0);
                                         while ($donnees = mysql_fetch_array($as))
                                        {
                                           $in_updates_query = mysql_query("select IN_Updates from Bgp_Peers where Autonomous_System=
                                                                                $peer_as");
                                           $total_in_updates=0;
                                            while ($donnees = mysql_fetch_array($in_updates_query))
                                                 {
                                                    $in_updates=intval($donnees['IN_Updates']);
                                                    $total_in_updates= $total_in_updates + $in_updates;
                                                 }                                     
                                            $received.= "".$total_in_updates.","; 
                                        }
                                      echo $received;                            
                                    ?>],
     
                                 fillStyle: fillStyle1
                                },
     
                                {
                                 title: 'OUT_Updates',
                                 type: 'column',
                                  data: [<?php
                                          mysql_data_seek($as, 0);
                                          while ($donnees = mysql_fetch_array($as))
                                        {
                                           $out_updates_query = mysql_query("select OUT_Updates from Bgp_Peers where Autonomous_System=
                                                                                $peer_as");
                                           $total_out_updates=0;
                                            while ($donnees = mysql_fetch_array($out_updates_query))
                                                 {
                                                    $out_updates=intval($donnees['OUT_Updates']);
                                                    $total_out_updates= $total_out_updates + $out_updates;
                                                 }                                     
                                            $sent.= "".$total_out_updates.","; 
                                        }
                                      echo $sent;
     
                                    ?>],
                                 fillStyle: fillStyle2
                                }
                            ]
    peut tu m'aider à trouver le problème??
    merci

  13. #13
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2012
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Août 2012
    Messages : 324
    Points : 13
    Points
    13
    Par défaut
    en fait, pour être encore plus précise, le résultat n'est pas faux, mais j'ai j'ai les même résultat pour le systèmes 65030 et 65050.

    merci

  14. #14
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Tant qu'à faire, autant faire les sommes dans une seule requête
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select Autonomous_System, SUM(IN_Updates) as total_in_update, SUM(OUT_Updates) as total_out_update
    from Bgp_Peers 
    group by Autonomous_System
    Ensuite récupérer le résultat et l'utiliser pour alimenter les données.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

Discussions similaires

  1. erreur de syntaxe dans la déclaration du tableau ou de la fonction
    Par une_tite_question dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 23/08/2010, 17h23
  2. Erreur de syntaxe dans une requête SQL
    Par amnesias dans le forum Langage SQL
    Réponses: 2
    Dernier message: 23/01/2007, 12h50
  3. Réponses: 8
    Dernier message: 23/08/2006, 22h22
  4. [SQL] erreur de syntaxe dans une requete
    Par einsteineuzzz dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 15/06/2006, 09h24
  5. Erreur de syntaxe dans une requete
    Par linou dans le forum Requêtes
    Réponses: 4
    Dernier message: 02/08/2005, 12h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo