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 :

[Tableaux] if et else ne veulent pas marcher


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Points : 95
    Points
    95
    Par défaut [Tableaux] if et else ne veulent pas marcher
    bonjour j'ai un "petit" code qui ne réagit pas vraiment comme voulu
    en effet il m'affiche ce qui est dans le if et dans le else
    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
    session_start();
    if($_SESSION['logged'] ||$_SESSION['logged'] == true)// on regarde que quelqu'un est connecter
    {
    ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    	<head>
    		<title>index --> membre --> jeux virtuelle --> index</title>
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    		<link rel="stylesheet" type="text/css" media="screen" title="Simple" href="toutetrien.css" />
    	</head>
    <body>
     
     
         <?php include("menu.php");
    mysql_connect("loclahost","******","*******");
    mysql_select_db("schats");
    $pol = mysql_query("SELECT jeuxfutur, pseudo from membre where pseudo='".$_SESSION['pseudo']."'")or die (mysql_error());// on récupèrer le résultat d'un champ
     
    if($pol['jeuxfutur'] == 1)// si c'est égal a 1 ont affiche l'espace site pour le jeu 
    {
    ?>
    <div id="corps">
    pas la pas la pas la pas la pasla// ici ca s'affiche même si c'est égal a 0
    </div>
    <?php
    }
    else//sinon
    {
    ?>
    	 <div id="corps">
    <?php
     
    ?>
     bonjour bienvenu dans la partie jeux virtuelle du site veillez vous inscrire  en allans <a href="./inscription_jeux.php">ici</a> // sa s'affiche même qand c'est égal et a 1
     
     
     
     
    	 </div>
    	 <?php
    	 }
    	 }
    	 else 
    	 {
    	 echo ' vous n\'étes pas membre merci de s\'inscrire ';// la c'est si la personne n'est pas connecter :s
    	 }
    	 ?>
    merci de m'aider

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 254
    Points : 304
    Points
    304
    Par défaut
    Il y a deux if et deux else... De quels if/else parles tu?
    D'autre part, ce if
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($_SESSION['logged'] ||$_SESSION['logged'] == true)// on regarde que quelqu'un est connecter
    me parrait des plus douteux.
    Car de part et d'autre du || il y a la même expression .
    De plus, cette contruction logique est des plus inhabituelle.
    On utilise en général plutôt l'expression logique || comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($a == true || $b == true)
    Quand un problème a une solution, rien ne sert de s'inquiéter. Quand il n'y a pas de solution, s'inquiéter n'arrange rien.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Points : 95
    Points
    95
    Par défaut
    je parle du deuxième if/else

    le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!empty['logged'] || $_SESSION['logged'] == true )
    je sais que c'est la même chose mais sa marche bien puis une vérification vaut bien deux

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 254
    Points : 304
    Points
    304
    Par défaut
    ????
    Le deuxième if dans le code initial c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($pol['jeuxfutur'] == 1)// si c'est égal a 1 ont affiche l'espace site pour le jeu
    Je ne vois pas de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!empty['logged'] || $_SESSION['logged'] == true )
    dans le code initial...
    Bon passons, en tout état de cause cette ligne me parrait également douteuse. Les crochets (me semble-t-il, sinon, qu'on m'explique, c'est une partie de php que je ne connais pas) sont utilisé pour les Array. Qui sont des variables. Les variables en php sont précédées pas le symbole '$'. Donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!$empty['logged'] || $_SESSION['logged'] == true )
    me parrait plus adéquat.
    Quand un problème a une solution, rien ne sert de s'inquiéter. Quand il n'y a pas de solution, s'inquiéter n'arrange rien.

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 012
    Points : 1 093
    Points
    1 093
    Par défaut
    je pense plutot que c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!empty($_SESSION['logged']) || $_SESSION['logged'] == true )
    mais tu es seul à savoir ce que tu veux tester

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Points : 95
    Points
    95
    Par défaut
    Citation Envoyé par francis m
    je pense plutot que c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!empty($_SESSION['logged']) || $_SESSION['logged'] == true )
    mais tu es seul à savoir ce que tu veux tester
    c'est bien sa désoler j'avais oublier le !empty ....

    mias c'est bien le if($pol['jeuxfutur"] == 1) qui ne veut pas marcher :s comment faire ....merci d'avance

  7. #7
    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
    Bonjour
    C'est assez logique que ça ne fonctionne pas correctement, tu n'exploites pas le résultat ! (ou alors il manque une ligne dansle code que tu nous as donné) En revanche je ne sais pas pourquoi ça t'affiche le contenu du if et du else.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $result = mysql_query("SELECT jeuxfutur, pseudo from membre where pseudo='".$_SESSION['pseudo']."'")or die (mysql_error());// on récupèrer le résultat d'un champ
     $pol = mysql_fetch_array($result);
    if($pol['jeuxfutur'] == 1){
    ....
    }else{
    ....
    }
    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]

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Points : 95
    Points
    95
    Par défaut
    tu veu dire que je devrai plutot faire .... mouai mais le seul problème quand je l'utilise sa bug toujours :s

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 132
    Points
    132
    Par défaut
    tu devrais utiliser if($pol['jeuxfutur'] === 1)
    == 1 c'est équivalent à if($pol['jeuxfutur'])

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Points : 95
    Points
    95
    Par défaut
    mouais :s ca ne marche toujours pas
    il me semble aussi qu'au lycée qu'il y avait ..... aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
      <?php
    	 }
    	 }
    	 else 
    	 {
    	 echo ' vous n\'étes pas membre merci de s\'inscrire ';
    	 }
    	 ?>
    alors je me demande ou je doit le mettre

    ps : je l'ai mit avec les deux bloc <div id="corps"></div>

    au lycée on a internet explorer 6.0

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 132
    Points
    132
    Par défaut
    teste ça pour voir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $query = "SELECT jeuxfutur, pseudo from membre where pseudo='".$_SESSION['pseudo']."'";
    $pol = mysql_query($query) or die (mysql_error());
    echo $query;
    echo $mysql_num_rows($pol);

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Points : 95
    Points
    95
    Par défaut
    euh bizare il ne m'affiche que ce qu'il y a dans ... les <div id="corps">
    </div>

  13. #13
    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
    Salut
    Tu veux dire que tu as testé le bout de code de zvince, et qu'il n'affiche pas les echos ? Alors là je ne comprends vraiment pas...
    Peux-tu redonner la dernière version de ton code STP ?
    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]

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Points : 95
    Points
    95
    Par défaut
    oui c'est bien ca
    ne t'inquiète pas tu n'est pas la seul
    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
    <?php
    session_start();
    if(!empty($_SESSION['logged']) ||$_SESSION['logged'] == true)
    {
    ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    	<head>
    		<title>index --> membre --> jeux virtuelle --> index</title>
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    		<link rel="stylesheet" type="text/css" media="screen" title="Simple" href="toutetrien.css" />
    	</head>
    <body>
     
     
         <?php include("menu.php");
    mysql_connect("loclahost","*******","**********");
    mysql_select_db("schats");
    $query = "SELECT jeuxfutur, pseudo from membre where pseudo='".$_SESSION['pseudo']."'";
      $pol = mysql_query($query) or die (mysql_error());
    echo $query;
    echo $mysql_num_rows($pol);
     
    if($pol['jeuxfutur'] === 1)
    {
    ?>
    <div id="corps">
    pas la pas la pas la pas la pasla
    </div>
    <?php
    }
    else
    {
    ?>
    	 <div id="corps">
    <?php
     
    ?>
     bonjour bienvenu dans la partie jeux virtuelle du site veillez vous inscrire  en allans <a href="./inscription_jeux.php">ici</a> 
     
     
     
     
    	 </div>
     
    	 <div id="pied_de_page">
    	 <?php
    	 include("pied.php");
    	 ?>
    	 </div> 
     
       </body>
    </html>

  15. #15
    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
    Bon je crois que tu as oublié un bout du code en copiant. C'est soit ça, soit ton else{ ne se ferme jamais.
    Et qu'y a-t-il dans le fichier pied.php ?

    En clair, ta pge n'affiche que les bouts en html et "perd" le php en cours de route... Question débile : c'est bien une page enregistrée en .php ?
    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]

  16. #16
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Points : 95
    Points
    95
    Par défaut
    euh oui je crois non plus sérieusement oui c'est bien du .php

    oups en effet un } :m'a échapper le méchant

    sinon dans le pied.php il y a le copyright et le compteur avec xiti

  17. #17
    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
    A priori, le problème ne vient pas du pied de page alors
    J'ai essayé de faire un peu de ménage, rajouter les }, tout ça... Et je persiste avec mon myslq_fetch_assoc :p
    Mais bon, avec ta page et ses erreurs paranormales, je ne garantis rien
    Code php : 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
    <?php
    	session_start();
    	if(!empty($_SESSION['logged']) ||$_SESSION['logged'] == true){
    echo "coucou <br/>";
    		?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    		<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    		<head>
    			<title>index --> membre --> jeux virtuelle --> index</title>
    			<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    			<link rel="stylesheet" type="text/css" media="screen" title="Simple" href="toutetrien.css" />
    		</head>
    		<body>
     
         		<?php include("menu.php");
    		mysql_connect("loclahost","*******","**********");
    		mysql_select_db("schats");
     
    		$query = "SELECT jeuxfutur, pseudo from membre where pseudo='".$_SESSION['pseudo']."'";
    		echo $query;
    		$pol = mysql_query($query) or die (mysql_error());
    		echo $mysql_num_rows($pol);
     
    		$data=mysql_fetch_assoc($pol);
    		echo $data['jeuxfutur'];
    		if($data['jeuxfutur'] === 1){
    			?>
    			<div id="corps">
    			pas la pas la pas la pas la pasla
    			</div>
    			<?php
    		}else{
    			?>
    			<div id="corps">
    			bonjour bienvenu dans la partie jeux virtuelle du site veillez vous inscrire  en allans <a href="./inscription_jeux.php">ici</a> 
    			</div>
    			<?php
    		}
    	}
     	?>
    	<div id="pied_de_page">
    	<?php
    	include("pied.php");
    	?>
    	</div> 
     
       </body>
    </html>
    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]

  18. #18
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 280
    Points : 95
    Points
    95
    Par défaut
    ben avec ton code .... tu me rajoute un erreur maintenant j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    "; ?> pas la pas la pas la pas la pasla
    bonjour bienvenu dans la partie jeux virtuelle du site veillez vous inscrire en allans ici
    bizare bizare :s

  19. #19
    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
    Cette erreur-là ne peut venir que du "echo coucou" au début. Mais vraiment qu'est-ce que c'est que ce code ? Et si tu menaces ton pc de le passer par la fenêtre, ça change quelque chose ?

    On va repartir à la racine : c'est une page en .php ? oui, tu l'as déjà dit
    Sur quoi travailles-tu comme outil ? (genre easyphp ou autre) avec quels composants ? (version d'apache, mysql...)
    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]

  20. #20
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 131
    Points : 132
    Points
    132
    Par défaut
    bizarre toutes ces choses qui manquent ( "}" par exemple) sans affighage d'erreur.
    il n'y aurait pas display_errors = Off dans php.ini ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Mes session ne veulent pas marcher :-/
    Par GrosB dans le forum Langage
    Réponses: 11
    Dernier message: 31/07/2006, 23h45
  2. onSubmit et onClick ne semblent pas marcher ensemble!
    Par celia05es dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 15/09/2005, 11h19
  3. Réponses: 14
    Dernier message: 16/05/2005, 13h20
  4. Kmail veux pas marcher sur mon serveur avec postfix
    Par jean christophe dans le forum Réseau
    Réponses: 4
    Dernier message: 06/05/2005, 01h02
  5. [VB6] [Système] Icones du systray qui veulent pas partir
    Par Ctof dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 07/10/2002, 09h41

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