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 :

HTML en un lien PHP


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut HTML en un lien PHP
    Bonjour,

    J’ai voulu apprendre un peu le PHP grâce a quelque tuto sur des sites.

    Donc j’ai réussi à faire quelque code pour pouvoir faire se que je veux, par exemple : page.php?p=accueil" au lieu de accueil.html et cela fonctionne plus ou moins, mais j’ai un petit problème, je vous montre se que j’ai fait et me dire d’où viens le problème ainsi je pourrais apprendre mes erreur :

    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> 
    <head> 
    <meta http-equiv="Content-Type" content= 
    "text/html; charset=utf-8" /> 
    <title>TESTE</title> 
    <meta name="keywords" content="" /> 
    <meta name="description" content="" /> 
    <link rel="shortcut icon" href="favicon.ico" /> 
    <link href="style_5.css" rel="stylesheet" type="text/css" media="screen" /> 
    </head> 
    <body> 
    <?php  
    if (!isset($p)) 
    $p="accueil";  
    ?> 
    <div id="contenu"> 
    <div id="menu1"></div> 
    <div id="menu2"> 
    <ul class="menu3"> 
    <li><a href="?p=accueil"><b>Accueil</b></a></li> 
    <?php  
    if ($p=="accueil");  
    ?>  
    <li><a href="?p=ref"><b>Produits</b></a></li> 
    <?php  
    if ($p=="ref");  
    ?>  
    <li><a href="?p=contact"><b>Contact</b></a></li> 
    <?php  
    if ($p=="contact");  
    ?> 
    </ul> 
    </div> 
    </div> 
    <div id="header"> 
    <?php  
    $p=preg_replace("/[^a-z0-9_ ]/i","", $_GET['p']); 
    if(!@include($p.".html")) die (include("accueil.html")); ?>  
    </div> 
    <div id="bat"> 
    <div id="contenu_cr"></div> 
    <div id="copyright" class="h1"></div> 
    </div> 
    </body> 
    </html>
    Le problème indique (Notice: Undefined index: p in J:\wamp\www\Site\page1.php on line 38) J’ai fait plusieurs teste de changer la variable et la valeur, ajouter et enlever les ; toujours se message d'erreur.

    Pourriez vous m’aidé à résoudre se petit problème, même si possible me corriger mon problème, je n’arrive pas et comme je débute je comprends plus rien.

    Merci

  2. #2
    FoxLeRenard
    Invité(e)
    Par défaut
    Houla plein d'erreurs a corriger

    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
     
    <?php  
    if (isset($_GET["p"])) $p=trim($_GET["p"]);
        else $p="accueil";
    ?> 
    <div id="contenu"> 
    <div id="menu1"></div> 
    <div id="menu2"> 
    <ul class="menu3"> 
    <li><a href="xxx.php?p=accueil"><b>Accueil</b></a></li> 
    <li><a href="xxx.php?p=ref"><b>Produits</b></a></li> 
    <li><a href="xxx.php?p=contact"><b>Contact</b></a></li> 
    </ul> 
    </div> 
    </div> 
    <div id="header"> 
    <?php  
    $p=preg_replace("/[^a-z0-9_ ]/i","", $p); 
    if(!@include($p.".html")) die (include("accueil.html")); 
    ?>  
    </div> 
    <div id="bat"> 
    <div id="contenu_cr"></div> 
    <div id="copyright" class="h1"></div> 
    </div> 
    </body> 
    </html>

  3. #3
    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
    Bonjour et bienvenu sur le forum,

    En PHP, quand tu appelles un tableau avec un index non défini, tu recois une erreur de type "NOTICE"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $tableau = array(1=>"un", 2=>"deux");
    echo $tableau[1]; // affiche un
    echo $tableau[3]; // n'affiche rien mais provoque une erreur NOTICE
    Comme leur nom l'indique les erreurs NOTICE ne sont que des remarques qui n'empechent pas le déroulement du script.
    D'ailleurs sur beaucoup de serveurs ces erreurs sont masquées.

    Ces remarques sont parfois bien utiles pourtant
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $calcul['paiement'] = 19444;
    // 2974 lignes plus loin
    $total = $calcul['paiements] * 2;
    echo $total; // affiche 0
    Avec les erreurs NOTICE je vois immédiatement que j'ai mal ecris ma variable car l'appel à $calcul['paiements] lève une erreur.
    Sans elles, je risque de tourner en rond pour trouver pourquoi mon total est égal à zéro.

    Parfois elles sont cependant embêtantes car elles obligent à un code très strict, comme dans ton cas :
    Imaginons que je veuille afficher la valeur de "p" passé par l'url :
    si j'ai mis index.php?p=toto, il m'affiche toto
    si je met index.php tout court, il ne m'affiche rien ...... et si il m'affiche une NOTICE.

    Je suis donc obligé de vérifier que la variable existe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (isset($_GET['p'])) { echo $_GET['p']; }
    Moi je recommande plutot, de travailler avec des écritures stricts, même si parfois ca demande une certaine gymnastique pour peu de différence car parfois aussi une NOTICE survient au détour d'une page pendant le devellopement de l'application, dans un cas très précis, et on se dit "ah oui tiens je n'avais pas pensé que dans ce cas, il pourrait se passer ça si je ne controle pas precisemment ma variable".

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci, Merci beaucoup tout fonctionne, j'ai vu mon erreur et merci de vos conseille.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 23/09/2008, 22h25
  2. lien php
    Par vins111282 dans le forum Langage
    Réponses: 5
    Dernier message: 22/11/2005, 15h58
  3. Confirmer une action dans un lien PHP
    Par Invité dans le forum Langage
    Réponses: 6
    Dernier message: 11/10/2005, 19h29
  4. [MySQL] generer un fichier html a partir de php en interne sur serve
    Par NoobX dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 11/10/2005, 14h01

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