Html / php creation de liens

Résolu
cyril -  
 cyril -
hello tout le monde,

voila je suis en train de faire un site et je me demandais si il 'y avait pas un moyen de faire en sorte que les liens vers la page suivante se créent automatiquement (comme pour les blogs) car le jour ou il y a 40pages et ke je supprime une page, j'aimerais ne pas avoir a editer toutes les pages pour refaire chaque lien.

Merci d'avance.
Configuration: Windows Vista
Firefox 3.0.2

21 réponses

  • 1
  • 2
  1. cyril
     
    et aussi comment faire un lien pour que, par exemple, si je suis a la page 2 je veux retourne a la page 1, sans creer chaque liens

    Une sorte de " onclick=pageactuel - 1 "

    ca doit etre fesable en recuperant le numero de la page dans une variable non?
    0
  2. isis
     
    ça tombe bien j'ai le meme probleme que toi. quelqu'un aurait-il une idée?
    0
  3. Utilisateur anonyme
     
    Si tes pages sont nommées ainsi : tapage1.htm, tapage2.htm, ... avec des numéro à la fin du nom, tu peu faire ceci :

    <?php
    $page = $_SERVER['SCRIPT_NAME'] ;
    ?>

    <?php
    $nbr = 4; // nombre de caractère de l'extension de la page + le "." donc, pour .php 4, .html 5 et .htm 4
    $name = substr($page, 0, -$nbr);
    $name = ++$name;
    echo $name;
    ?>

    <?php
    if($name<5){
    echo "<a href=$name.php>$name</a>";
    }
    else{
    echo "";
    }
    ?>

    ici, il n'y aura plus de lien à partir de la page 5. (on ne pourra pas aller à la page 6, ce qui est pratique pour éviter des erreurs si la page 6 est inexistante)
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. cyril
     
    ok merci.

    je colle donc tout ça dans mon fichier php? désolé je ne suis pas doué en php ( il faut bien passer par la avant d'etre bon ^^ )mais j'essaye de omprendre quand meme au lieu de toujours venir demander de l'aide.

    la variable " &name " elle viens de: $_SERVER['SCRIPT_NAME'] ?
    0
  6. Utilisateur anonyme
     
    $name est enfait le nom de la page sans l'extension, j'ai enlevé les 4 derniers caractères de $_SERVER['SCRIPT_NAME'] qui est le nom de la page avec l'extension.
    0
    1. isis
       
      euh je viens de me rendre compte de quelque chose, en faite la page ou je veux mettre la liste de pages s'apelle page1 et dans celle-ci j'ai fait "include('liste_pages.php') " donc si je met ton code dans liste page,bien qu'il soit inclus dans page1, $name me renverra liste_pages non?
      0
      1. cyril > isis
         
        je comprends maintenant l'interêt d'isis pour cette question, c'est un amis qui est sur le meme projet mdr !

        Je me disait aussi que les coincidences etaient troublantes
        0
  7. Utilisateur anonyme
     
    c'est une bonne question... je n'ais jamais testé. essaye tu verra bien. mais il me semble qu'il renverra le nom de la page dans laquelle il est inclut et non liste_page
    0
  8. cyril
     
    a oui génial !! maintenant, il faut juste trouver pour il m'afficher le lien complet de la page lol ! avec le nom de repertoire parent et tout ^^
    0
    1. cyril
       
      ah c'est bon merci j'ai supprimé le echo $name;


      encore une fois merci et peut etre a bientot
      0
  9. cyril
     
    et euh par contre pour la partie

    <?php
    if($name<5){
    echo "<a href=$name.php>$name</a>";
    }
    else{
    echo "";
    }
    ?> 


    ça ne fonctionne pas
    0
  10. Utilisateur anonyme
     
    qu'est-ce qui ne fonctionne pas ? le if() ou le lien ?
    0
    1. cyril
       
      LE IF.

      <?php
      $page = $_SERVER['SCRIPT_NAME'] ;
      ?>
      
      <?php
      $nbr = 4; // nombre de caractère de l'extension de la page + le "." donc, pour .php 4, .html 5 et .htm 4
      $name = substr($name, 0, -$nbr); //pour enlever l'extension
      $name1 = substr($page, -1,-5); //pour ne garder que le n° de  la page
      $name1++; //incrémentation qui fonctionne pas
      
      ?>
      
      <?php
      echo $name1; //pour verifier la valeur de name 1 qui d'ailleurs ne s'incrémente pas je ne sais pas pourquoi
      if($name1<2){
      echo "<a href=page$name1.php>suivante</a>"; //et ici, il n'ajoute pas la variable a la fin de la page 
      }
      else{
      echo "<a href='index.php'>Accueil</a>";
      }
      



      j'ai essayé de le faire seul, mais le probleme est que la variable ne s'incrémente pas.
      0
  11. Utilisateur anonyme
     
    a ce moment là tu fais :

    if($name1!=="nomdelapage5"){
    echo "<a href=...>...</a>";
    }
    else{
    echo "<a href='index.php'>Accueil</a>";
    }

    comme sa tant que le nom de la page ne sera pas "nomdelapage5", ça continuera.
    0
  12. cyril
     
    c'est bon en faite j'avais juste inversé le nom des variables au debut.

    En revanche, comment faire pour que

    echo "<a href=page$name1.php>suivante</a>";

    fonctionne ? car si j'enleve le point entre page et $name, le n°de la page n'apparait pas de le lien. et si j'ajoute le point, alors le lien est presque bon sauf qu'il y a le point en trop.
    0
  13. Utilisateur anonyme
     
    echo "<a href=page".$name1.".php>suivante</a>";
    0
  14. Utilisateur anonyme
     
    sa dépend pour faire quoi :p
    0
  15. cyril
     
    nan en faite c'est bon j'ai reussi a contourner le probleme. encore merci !!! a bientot peut etre merci
    0
  16. cyril
     
    re tout le monde, j'avais un systeme de commentaire sur ma page daccueil, j'ai décidé de deplacer ce systeme dans une page a part et de mettre un lien vers cette nouvelle page sur ma page d'accueil et depuis j'ai cette erreur qui s'affiche :

    Commentaires :

    Warning: include(npdc/coms/sayop.php) [function.include]: failed to open stream: No such file or directory in /www/unlimitedwar/npdc/ajouter_com/jonathan_page_1.php on line 7

    Warning: include() [function.include]: Failed opening 'npdc/coms/sayop.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /www/unlimitedwar/npdc/ajouter_com/jonathan_page_1.php on line 7

    Fatal error: Call to undefined function showComms() in /www/unlimitedwar/npdc/ajouter_com/jonathan_page_1.php on line 8
    0
  17. Utilisateur anonyme
     
    les fichiers a inclure ne sont pas au bon endroi apparement
    0
  18. cyril
     
    pourtan quand je tape l'apresse dans ma barre dadresse ils y sont bien. et le code de sayop c'est :

    function showComms($id,$path) {

    include("http://unlimitedwar.o-n.com/npdc/coms/com/db.php");

    $catid = $id;
    $sql = mysql_query("SELECT * FROM ".$so_prefix."_main WHERE catid='".$catid."' ORDER BY id ");
    while ($irow = mysql_fetch_row($sql)) {
    echo "
    <div class='sayopcontainer'>
    <div class='sayopspacer'> </div>
    <div class='sayopufloat'>Par $irow[3]      $irow[4]<br /></div>
    <div class='sayopfloat'>$irow[5]<br /></div>
    <div class='sayopdfloat'>posté a $irow[6]<br /></div>
    <div class='sayopspacer'> </div>
    </div>
    ";
    }

    $s = mysql_query("SELECT * FROM ".$so_prefix."_obj WHERE catid='".$catid."' ");
    $o_name = mysql_fetch_row($s);
    $obj_name = $o_name[1];

    $p = $path;

    echo "
    <div style='sayopfloat: left;width: 35%; background-color: ; border-top: 0px; border-bottom: 1px groove #333; padding: 5px; color: #FF0000;
    margin: 0px auto; text-align: left;'>
    <form name='f1' action='$p/com/add_entry.php' method='post'>
    <input type='hidden' name='obj_name' value='$obj_name' />
    <input type='hidden' name='catid' value='$catid' />
    <div class='sayoprow'>
    Prenom: <input type='text' size='25' name='author' />
    </div>
    ";
    echo "
    <div class='sayoprow'>
    Email: <input type='text' size='25' name='email' /><span class='sayopsmall'>(optionel)</span>
    </div>

    ";
    echo "
    <div class='sayoprow'>
    <span class='sayoplabel'>Commentaires:</span><span
    class='sayopformw'>
    <textarea name='comment' cols='32' rows='8'></textarea>
    </span>
    </div>
    <div class='sayoprow'>
    <input type='submit' name='Add' value='Envoyer' />
    </div>
    </form>
    </div>
    ";

    }
    0
    1. cyril
       
      up plizz
      0
  19. Utilisateur anonyme
     
    essai en mettant juste l'URL a partir de la racine , et non l4URL complete (http://...)
    0
  • 1
  • 2