Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les forums > Site Web > PHP > Vos Fonctions ou astuces > Lecture du sujet

Vos Fonctions ou astuces

Vous devez être inscrit pour pouvoir poster des messages

Page : Précédente  1  2  3  4  5  6  7  8  ...  93  94  95  96  Suivante
Auteur Message
1 visiteur sur ce sujet (1 anonyme)
Page : Précédente  1  2  3  4  5  6  7  8  ...  93  94  95  96  Suivante
Hors ligne Bison # Posté le 27/03/2006 à 13:19:10
Expreg.com
Avatar
Groupe : Membres
Reprise du dernier message de la page précédente :
Citation : Elentar
@eLaps >
Citation : Bison
Citation : Quadehar
normalement, on n'a pas besoin d'inverse de nl2br :p

Enfin un qui sait coder sur ce forum !

Pas d'accord, un br2nl() est indispensable pour un script où les messages sont déjà parsés dans la BDD.


Et bien, ne t'en déplaise, mais c'est une grossière erreur !
Si nl2br() était utilisé correctement quand et où il le faut, il n'y aurait pas besoins de mettre au point des fonctions utilisateurs pour supprimer l'effet d'une fonction native PHP mal exploitée.
nl2br() s'utilise à l'affichage et pas avant de mettre le texte en base de données.

Par la rue "Plus tard", on arrive à la place "Jamais" !
Les regex, j'y connais que dalle... alors, j'essaie de comprendre là : Expreg.com
 
Hors ligne Quadehar # Posté le 27/03/2006 à 20:25:55
Avatar
Groupe : Membres
Je plussois :p

nl2br, contrairement à du BBcode, qui lui, serait beaucoup trop lourd, s'utilise à l'affichage.

Wii Motion - Site sur la Wii proposant de nombreuses news, des dossiers, des previews, des tests et un forum.
 
Hors ligne Elentar # Posté le 27/03/2006 à 20:52:36
Avatar
Groupe : Membres
Citation : Bison
Citation : Elentar
@eLaps >
Citation : Bison
Citation : Quadehar
normalement, on n'a pas besoin d'inverse de nl2br :p

Enfin un qui sait coder sur ce forum !

Pas d'accord, un br2nl() est indispensable pour un script où les messages sont déjà parsés dans la BDD.


Et bien, ne t'en déplaise, mais c'est une grossière erreur !
Si nl2br() était utilisé correctement quand et où il le faut, il n'y aurait pas besoins de mettre au point des fonctions utilisateurs pour supprimer l'effet d'une fonction native PHP mal exploitée.
nl2br() s'utilise à l'affichage et pas avant de mettre le texte en base de données.

Je comprends ton point de vue, mais je pense que tu devrais aussi comprendre le mien : personnellement je me suis donné comme règle (dans les projets "classiques") de ne jamais avoir à modifier le texte sorti de la BDD à l'affichage. Ca fait un peu plus de boulot : il faut faire des fonctions inverses pour modifier le texte à la modification, mais c'est très gêrable et moins lourd à gêrer pour le serveur.
Bien sûr, si on ne tient compte que du nl2br() c'est dérisoire, c'est surtout le lourd parsing (BBcode et apparentés) qui rapporte.
Mais en respectant cette règle simple je n'ai jamais de problèmes, et je sais que si il y a un bug quelque part c'est toujours... avant l'enregistrement dans la BDD. Pas besoin d'aller vérifier avec PHPMyAdmin ou autres si l'affichage est mauvais à cause de ce qui s'est passé avant l'enregistrement, ou après.
Je pense que cette règle "simple" m'a simplifié quelques debugages sans avoir de quelconque impact négatif sur les performances, et j'ai gagné plus de temps avec cela qu'en créant un br2nl().
Hors ligne baptiste.k # Posté le 27/03/2006 à 21:46:32
Avatar
Groupe : Membres

Fonction servant à afficher un array



Cette fonction sert à afficher un array (comme print_r) sauf que contrairement à celui-ci, tout est géré en xHtml, de plus, le code généré est valide xHtml 1.0 Scrict.

Code : PHP
<?php
function printr($array = array(), $cledef = false, $nbtabs = 0)
{
        //Vous pouvez changer la taille d'une tabulation
        //et la hauteur d'une ligne
        $tabulation = 50; //en pixels
        $hauteur_ligne = 20; //en pixels
        //A partir de cette ligne, ne touchez plus à rien
       
        $debligne = '<div style="height: '.$hauteur_ligne.'px; padding-left: %%px">'; $finligne = '</div>';
        echo str_replace('%%', $tabulation*$nbtabs, $debligne).(($cledef !== false) ? '['.$cledef.'] => ' : '').'Array'.$finligne.str_replace('%%', $tabulation*$nbtabs, $debligne).'('.$finligne;
        foreach($array as $cle => $valeur) { if(is_array($valeur)) { printr($valeur, $cle, $nbtabs+1); } else { echo str_replace('%%', $tabulation*($nbtabs+1), $debligne).'['.$cle.'] => '.$valeur.$finligne; } }
        echo str_replace('%%', $tabulation*$nbtabs, $debligne).')'.$finligne;
}
?>


Cette fonction m'a pas mal aidée, parce que je suppose que, comme moi, vous avez assez souvent besoin d'afficher un array, pour voir par exemple d'où vient une erreur etc... Et c'est assez chiant d'afficher la source ou encore de mettre la balise <pre> avant le print_r alors j'ai décidé de créer cette fonction. Vous pouvez donc modifier la longueur d'une tabulation et la hauteur de chaque ligne.
Édité le 28/03/2006 à 01:59:59 par baptiste.k
Hors ligne Makkhdyn # Posté le 27/03/2006 à 22:47:04
Beuhhhh
Avatar
Groupe : Membres
Citation
Notice: Undefined variable: debtab in d:\www\test\test.php on line 13

Notice: Undefined variable: fintab in d:\www\test\test.php on line 13

echo str_replace('%%', $tabulation*$nbtabs, $debligne).$debtab.')'.$fintab.$finligne;


Par contre voici un code qu'un zéro (si ma mémoire est bonne) avait fait
Code : PHP
        function printr($array){
                static $indentation = NULL;
                static $array_key   = NULL;
                $cst_indentation    = '&nbsp;&nbsp;&nbsp;&nbsp;';

                echo $indentation.$array_key.'<strong>array(</strong><br />';
                reset($array);

                foreach($array as $k => $v){
                        if (is_array($v)){
                                $indentation .= $cst_indentation;
                                $array_key    = '\'<em style="color: #334499 ;">'.addslashes(htmlspecialchars($k)).'</em>\' =&gt; ';
                                printr($v);
                                $indentation  = substr($indentation,0,strlen($indentation)-strlen($cst_indentation));
                        }else
                                echo $indentation.$cst_indentation.'\'<em style="color: #334499 ;">'.addslashes(htmlspecialchars($k)).'</em>\' =&gt; \''.addslashes(htmlspecialchars($v)).'\',<br />';
        }
                echo $indentation.'<strong>)</strong>'.(($indentation===NULL)?';':',').'<br />';
    }

Ceci n'est pas une signature
 
Hors ligne baptiste.k # Posté le 28/03/2006 à 02:02:24
Avatar
Groupe : Membres
Désolé, j'ai modifié mon code et j'ai oublié de modifier cette ligne, bref, je viens d'éditer et normallement c'est bon.

Bonne soirée à tous
Hors ligne Bison # Posté le 28/03/2006 à 09:37:18
Expreg.com
Avatar
Groupe : Membres
Citation : Elentar
Bien sûr, si on ne tient compte que du nl2br() c'est dérisoire, c'est surtout le lourd parsing (BBcode et apparentés) qui rapporte.

Elentar, je suis entièrement d'accord sur un truc lourd bourré de regex comme le "fumeux" BBcode.(D'autant plus si cela ressemble à ce que je vois constamment ici.)

Mais ce n'est pas la fonction primaire d'une base de données. C'est la dérive des trucs comme les forums hyperlourds à la phpBB ou punbb qui ont donné le ton.
La règle est : pas de données formatées dans une base de données.
D'ailleurs la règle devrait être la suivante pour du texte formaté :
- un lien dans la bd et le texte formaté sous forme de fichier html dans un dossier.

Par la rue "Plus tard", on arrive à la place "Jamais" !
Les regex, j'y connais que dalle... alors, j'essaie de comprendre là : Expreg.com
 
Hors ligne danick # Posté le 29/03/2006 à 00:11:51
Groupe : Membres

Fonction qui change l'heure



Voilà disons que vous êtes dans la même situation que moi.Vous avez un hébergeure français mais vous habitez le Quebec.Et que vous voulez afficher l'heure et la date. Le problème vous aurez ces informations du serveur qui est français donc ces informations seront fausse . Je propose donc un petit code tous simple.

Code : PHP
<?php

$timestamp = (time( ) - 21600);

//ensuite on affiche les dates et l'heure

echo date('d/m/Y', $timestamp);
echo date ('H/i/s',$timestamp );

 ?> 


Vous devez modifiez le nombre de seconde que vous enlevez en fonction du fuseau horaire.Petit rappelle
1 heure = 3600 seconde
3600 à multiplier par le nombre d'heure de décallage entre l'heure réelle et l'heure su serveur .

She Is Buying The Stairway To Heaven ...
To Be A Rock And Not To Roll ... you can make your life with these sentences....
 
Hors ligne woufeigh # Posté le 29/03/2006 à 00:25:07
Webnul
Avatar
Groupe : Membres
JE me demande si je n'ai pas deja vu ca quelque part lol

Image utilisateur
 
Hors ligne baptiste.k # Posté le 29/03/2006 à 13:45:06
Avatar
Groupe : Membres
Depuis php 5.1, on peut également utiliser la fonction date_default_timezone_set() pour préciser le fuseau horaire ;)
Hors ligne anonyme # Posté le 30/03/2006 à 17:54:28
Groupe :
Une de mes fonctions qui permet de trier une chaîne de caractère en ordre alphabétique :

Code : PHP

<?php
function trier($chaine) {
                          $chaine = explode('-', $chaine);
                          sort($chaine);
                          foreach($chaine as $value)
                          {
                            echo $value;
                            echo '-';
                          }
                        }
$chaine = "cheval-ane-mulet";
trier($chaine); //Affiche ane-cheval-mulet-
?>
Hors ligne Makkhdyn # Posté le 30/03/2006 à 18:11:21
Beuhhhh
Avatar
Groupe : Membres
implode :-°

Ceci n'est pas une signature
 
Hors ligne anonyme # Posté le 30/03/2006 à 18:46:30
Groupe :
Pas besoin :-°
Le script marche très bien comme ca ^^
Hors ligne Tithugues # Posté le 30/03/2006 à 18:58:23
Avatar
Groupe : Membres
Oui, mais à quoi sert-il de réécrire une fonction qui existe déjà???
Hors ligne anonyme # Posté le 30/03/2006 à 19:00:04
Groupe :
Faisons plaisir à Makkhdyn :-°

Code : PHP

<?php
function trier($chaine) {
                          $chaine = explode('-', $chaine);
                          sort($chaine);
                          $chaine = implode('-', $chaine);
                          echo $chaine;
                          return $chaine;
                        }
$chaine = "cheval-ane-mulet";
trier($chaine); //Affiche ane-cheval-mulet-
?>


Tithugues >> N'hésite pas à donner le nom de cette fonction !
Hors ligne Tithugues # Posté le 30/03/2006 à 19:10:08
Avatar
Groupe : Membres
Ca me fait plaisir à moi aussi, car quand je demandais à quoi bon réécrire une fonction déjà existante, je parlais de la fonction implode...
Hors ligne Quadehar # Posté le 30/03/2006 à 20:44:18
Avatar
Groupe : Membres
pourquoi ne pas donner également le choix du séparateur ?

Code : PHP
<?php
function trier($chaine, $separateur='-') {
                          $chaine = explode($separateur, $chaine);
                          sort($chaine);
                          $chaine = implode($separateur, $chaine);
                          return $chaine;
                        }
$chaine = "cheval-ane-mulet";
echo trier($chaine); //Affiche ane-cheval-mulet-
?>
Édité le 30/03/2006 à 20:44:58 par Quadehar

Wii Motion - Site sur la Wii proposant de nombreuses news, des dossiers, des previews, des tests et un forum.
 
Hors ligne anonyme # Posté le 30/03/2006 à 22:04:29
Groupe :
Pas bête le choi du séparateur, je n'y avait pas pensé ;)
Hors ligne Bison # Posté le 01/04/2006 à 07:17:10
Expreg.com
Avatar
Groupe : Membres
Citation : Swf_Err2str
Pas bête le choi du séparateur, je n'y avait pas pensé ;)

Bah... évite de penser, tu te fais du mal ! :p
En plus, ça t'empéchera de réinventer la roue ! :-°

Par la rue "Plus tard", on arrive à la place "Jamais" !
Les regex, j'y connais que dalle... alors, j'essaie de comprendre là : Expreg.com
 
Hors ligne anonyme # Posté le 01/04/2006 à 08:53:06
Groupe :
Citation : Bison
Citation : Swf_Err2str
Pas bête le choi du séparateur, je n'y avait pas pensé ;)

Bah... évite de penser, tu te fais du mal ! :p
En plus, ça t'empéchera de réinventer la roue ! :-°


Remarque débile :-°
Ma maman m'a appris à ne pas répondre aux méchants^^ :colere:
Pourtant je l'ai fait :euh:

En gros Bison, à chaque fois que je te vois sur un forum tu es obligé de critiquer, ca peux blesser défois, maîtrise tes pulsions...
Hors ligne Makkhdyn # Posté le 01/04/2006 à 09:21:51
Beuhhhh
Avatar
Groupe : Membres
Bison ne fait dire tout haut ce que tout le monde pense. Je te dis que ton script n'utilise pas implode alors qu'il le devrait, le seul truc que tu trouve a me répondre c'est "oui mais ça marche comme ça" ensuite tu dis "voila pour faire plaisir a Makkhdyn". Personnelement ton script me passe au dessus de la tête. Je n'en ai pas besoin et ce n'était qu'une remarque pour t'aider.

Bison ne fait qu'exprimer la tention que tu génère.

Ceci n'est pas une signature
 
Hors ligne Sikko # Posté le 02/04/2006 à 17:46:04
Pouette...
Avatar
Groupe : Membres

Lorsque vous aurez besoin d'alterner les couleurs d'une liste quelconque comme dans un forum, un livre d'or etc... afin que la lécture soit plus claire et comprehensible. Etant donné que je n'ai pas trouvé de solution concrète sur le net, j'ai trouvé une solution très efficace basée sur la parité des nombres.


La plupart du temps, pour afficher une liste, vous aurez besoin de faire une boucle. J'utiliserai une boucle while.
Code : PHP


$nombre =0; //on initialise la valeur du chiffre a 0.

   
while ($donnees=mysql_fetch_array ($messages_affiches))
        {
       
         if ($nombre%2 == 0) // Si le nombre est pair...
                {?>
                        <div class="contenu_avec_fond_clair">
                        CONTENU DE VOTRE LISTE
                        </div>
                <?}
               
           else  //Sinon...(le nombre sera forcement impair)
                {?>
                        <div class="contenu_avec_fond_fonce">
                        CONTENU DE VOTRE LISTE
                        </div>
                <?}
       
           
        $nombre++; //On incrémente la valeur du nombre (celui-ci passe de 0 à 1, on change de parité et donc de couleur ;-) )
        }


Et biensur, ne pas oublier le petit CSS qui va avec ;)
Code : CSS


.contenu_avec_fond_clair
{
background-color:#def0ff;
padding-top:2px;
padding-bottom:2px;
}

.contenu_avec_fond_fonce
{
background-color:#b5dfff;
padding-top:2px;
padding-bottom:2px;
}


Voilou voilou j'espere que ça vous aidera ;)

Amicalement, Sikko.


 
Hors ligne Quadehar # Posté le 02/04/2006 à 17:56:15
Avatar
Groupe : Membres
plutôt définir la couleur dans une variable, plutôt que de réécrire tout le bloc à chaque fois :

Code : PHP
$couleur = ($nombre%2 == 0) ? '#FFFFFF' : 'EEEEEE';


et plus loin :

Code : PHP
echo '<tr style="background-color: '.$couleur.';"><td>[...]</td></tr>';

Wii Motion - Site sur la Wii proposant de nombreuses news, des dossiers, des previews, des tests et un forum.
 
Hors ligne Makkhdyn # Posté le 02/04/2006 à 18:48:28
Beuhhhh
Avatar
Groupe : Membres
Alors pour l'incrementation utilise plutot la préincrementation (légèrement plus rapide) => ++$i;
Enfin pour vérifier l'égalité utilise trois signes = c'est légèrement plus rapide aussi.
Puis pour completer les dires de Quadehar en fait l'utilisation du (condition)?x:y est plus lent qu'un if else normal donc dans l'absolut c'est mieux de faire légèrement plus long ;)

Ceci n'est pas une signature
 
Hors ligne Quadehar # Posté le 02/04/2006 à 18:51:25
Avatar
Groupe : Membres
Citation : Makkhdyn
Alors pour l'incrementation utilise plutot la préincrementation (légèrement plus rapide) => ++$i;
Enfin pour vérifier l'égalité utilise trois signes = c'est légèrement plus rapide aussi.
Puis pour completer les dires de Quadehar en fait l'utilisation du (condition)?x:y est plus lent qu'un if else normal donc dans l'absolut c'est mieux de faire légèrement plus long ;)


Yep, je sais, mais j'ai pris l'habitude :p D'un autre côté, la différence est négligeable, mais c'est vrai qu'en général, j'utilise la syntaxe longue ;)

Wii Motion - Site sur la Wii proposant de nombreuses news, des dossiers, des previews, des tests et un forum.
 
Hors ligne winzou # Posté le 02/04/2006 à 20:58:03
lala
Avatar
Groupe : Membres
Citation : Makkhdyn
Alors pour l'incrementation utilise plutot la préincrementation (légèrement plus rapide) => ++$i;
Enfin pour vérifier l'égalité utilise trois signes = c'est légèrement plus rapide aussi.
Puis pour completer les dires de Quadehar en fait l'utilisation du (condition)?x:y est plus lent qu'un if else normal donc dans l'absolut c'est mieux de faire légèrement plus long ;)

C'est quoi ces arguments de merde :D

cImage utilisateurc
 
Hors ligne MaxDc # Posté le 02/04/2006 à 22:48:13
Chouette alors !
Avatar
Groupe : Membres
Citation : winzou
C'est quoi ces arguments de merde :D


au moins on sait pourquoi le site est si lent maintenant :D

Ce qui empêche souvent d'aller de l'avant, c'est de commencer par le commencement.


Une mère est de 21 ans plus âgée que son enfant.
Dans 6 ans, son enfant sera 5 fois plus jeune que sa mère !
Question : Où se trouve le père ?
 
Hors ligne hxv2 # Posté le 03/04/2006 à 12:45:22
Why ?
Groupe : Membres
Je viens de terminer un script permettant de gérer l'affichage sur mon site sans trop de prise de tête : les fonctions sont en français et ce système utilise les templates.
Ce srcipt est composé de 5 pages agencées comme suit :
- index.php : la page qui crée un objet de type page dont la classe est définie dans page_gen.php
- page_gen.php : définition de la classe page
- template.inc
[dossier template] => gabarit1.html : le gabarit, le template de la page
[dossier template] => desing_sombre.css : le design de la page
[dossier template] => logotest.gif : un logo

Le but était de créer un système facile pour gérer le design sans devoir reccourir à gérer des templates à chaque fois. Ce système a beau être géré par des template, je le trouve convivial et simple d'utilisation.

La page index.php est un exemple d'utilisation de cette classe.

Le script ne donne pas encore le nombre de visiteurs conectés.


Voici le contenu des pages :

index.php :
Code : PHP
<?
// page test utilisant page_gen.php

include("page_gen.php");

$titre = htmlentities("Titre de la page");
$liens_haut = array("lien1", "lien2");
$liens = array("Lien_menu1", "Lien_menu2");
$corps = "Corps du site";
$corps2 = "<br /> Suite du corps";
$requetes = 3;

$test = new page;
$test->rajout("titre", $titre);
$test->rajout("corps", $corps);
foreach ($liens_haut as $lien)
        {
        $test->rajout("lien_haut", $lien);
        }
foreach ($liens as $lien)
        {
        $test->rajout("lien", $lien);
        }
for ($i=0;$i<$requetes;$i++)
        {$test->rajout("requete");}
$test->rajout("corps", $corps2);

$test->afficher();
?>


page_gen.php :
Code : PHP
<?
// Générateur de pages
// Cette classe et ses fonctions permetent de générer une page Web à partir de tout gabarit
// ayant la forme classique dont un exemple est "gabarit1.html"
// nb visiteurs et le temps de generation de la page est généré par ce script
// créé le 2/04/2006
// Dernière modif le 3/04/2006

// NB_VISITEURS N"EST PAS ENCORE GERE

require("template.inc"); //on inclus la classe Template

class page
{
    var $titre = "Page sans titre";
    var $lien_haut = array();
    var $lien = array();
    var $corps = "";
    var $nb_visiteurs = 0;
    var $nb_requetes = 0;
    var $temps_generation = 0;
    var $temps_debut = 0;
    var $temps_fin = 0;
    var $html;

    // FONCTION NON TERMINEE !!!
    function fatal_error($msg_error = "Il y a une erreur !")
    {die(htmlentities($msg_error));}

    function microtime_float()
    {return array_sum(explode(" ", microtime()));}

    function page($chemin = "template", $url = "gabarit1.html")
    {
        $this->temps_debut = $this->microtime_float();
        $this->html = new Template($chemin) or fatal_error("Template : pas créé le new objet");
        echo $this->chemin;
        $this->html->set_file("page", $url); //on ajoute un fichier html
    }

    function rajout($type = "corps", $contenu = "") // fonction pour ajouter qqchose au contenu : lien_haut, lien, corps ou autre
    {
        if     ($type == "corps")       {$this->corps.=$contenu;}
        elseif ($type == "lien_haut")   {array_push($this->lien_haut, $contenu);}
        elseif ($type == "lien")        {array_push($this->lien, $contenu);}
        elseif ($type == "requete")     {$this->nb_requetes++;}
        elseif ($type == "titre")       {$this->titre = $contenu;}
        else                            {$this->fatal_error("ERREUR DE RAJOUT : TYPE = ".$type);}
    }

    function afficher()
    {
        $this->html->set_var("TITRE", $this->titre);

        $this->html->set_block("page","MENU_HAUT","une_ligne");

        foreach($this->lien_haut as $bete_lien)
        {
            $this->html->set_var("LIEN_HAUT", $bete_lien); //on ajoute le pseudo
            $this->html->parse("une_ligne","MENU_HAUT",true); //et on parse la ligne
        }

        $this->html->set_block("page","MENU","deuxieme_ligne");
        foreach($this->lien as $bete_lien)
        {
            $this->html->set_var("LIEN", $bete_lien); //on ajoute le pseudo
            $this->html->parse("deuxieme_ligne","MENU",true); //et on parse la ligne
        }

        $this->html->set_var("CORPS", $this->corps);
        $this->html->set_var("NB_VISITEURS", $this->nb_visiteurs);
        $this->html->set_var("NB_REQUETES", $this->nb_requetes);

        $this->temps_fin = $this->microtime_float();
        $this->temps_generation = round(($this->temps_fin - $this->temps_debut), 4);
        $this->html->set_var("TEMPS_GENERATION", $this->temps_generation);

        $this->html->parse("affichage","page"); //on traite le tout
        $this->html->p("affichage"); //et on affiche
    }
}
?>


template1.html :
Code : HTML
<!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" >
   <head>
       <title>{TITRE}</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
           <link rel="stylesheet" media="screen" type="text/css" title="Design sombre" href="template/sombre.css" />
        </head>
       
        <body>
                <div class='banniere'>
                </div>
       
                <div class='menu_haut'>
                        <table>
                                <tr>
                                        <!-- BEGIN MENU_HAUT -->
                                        <td>{LIEN_HAUT}</td>
                                        <!-- END MENU_HAUT -->
                                </tr>
                        </table>
                </div>

                <div class='menu'>
                        <table>
                                <!-- BEGIN MENU -->
                                <tr>
                                        <td>{LIEN}</td>
                                </tr>
                                <!-- END MENU -->
                        </table>
                </div>
 
                <div class='principal'>
                        {CORPS}
                </div>
               
                <div class='copyright'>
                        <p style="float: left; padding: 10px;">
                                {NB_VISITEURS} visiteurs | {NB_REQUETES} requêtes | {TEMPS_GENERATION}s
                        </p>
                        <p style="margin-right: 10px; padding:5px;">
                                <a href="http://validator.w3.org/check?uri=referer"><img
                                        src="http://www.w3.org/Icons/valid-xhtml10"
                                        alt="Valid XHTML 1.0 Strict" height="31" width="88" />
</a>
                        </p>
                </div>
        </body>
</html>


logotest.gif : n'importe quel logo de 117*150 à peu près.

template.inc : vous connaissez.
Hors ligne winzou # Posté le 03/04/2006 à 23:18:13
lala
Avatar
Groupe : Membres
Citation : MaxDc
Citation : winzou
C'est quoi ces arguments de merde :D


au moins on sait pourquoi le site est si lent maintenant :D

vtff :D

oui ya que des $i++ et des ternaires sur la v3 :D
Par contre on a les 3 égals :p

cImage utilisateurc
 
Hors ligne madyn # Posté le 04/04/2006 à 22:35:11
Avatar
Groupe : Membres
La fonction pour mettre au pluriel !

Ses fonctions :
  • Elle gère l'affichage du nombre
  • Gère plusieurs mots
  • Met un espace après le mot si ce n'est pas le dernier mot
  • Gère l'affichage du 's' ou du 'x'
  • Si $forallnames est égal a false la fonction ne mettra au pluriel que le dernier mot


Code : PHP
function pln($n, $nbr, $echo_nbr=false, $forallnames=false){
 if($nbr>1){
  if(!$forallnames){
   if(substr($n, -1, 1) == 'u'){
    if(!$echo_nbr) return($n.'x'); else return($nbr.' '.$n.'x');
    }else{
    if(!$echo_nbr) return($n.'s'); else return($nbr.' '.$n.'s');
    }
   }else{
   $array_nms=explode(' ', $n);
   $return='';
   $tr=0;
   $nbr=count($array_nms);
   foreach($array_nms as $nom){
    ++$tr;
    if(substr($nom, -1, 1) == 'u'){
     $return.=$nom.'x';
     }else{
     $return.=$nom.'s';
     }
        if($tr!=$nbr) $return.=' ';
        }
   if(!$echo_nbr) return($return); else return($nbr.' '.$return);
   }
  }else{
  if(!$echo_nbr) return($n); else return($nbr.' '.$n);
  }
 } // Fonction de pluriel des noms : pln($nom, $nombre, $echo_nbr[false], $forallnames[false]);


En espérant avoir aidé, elle est un peu moin basique que els autres au moins la mienne :p

@bientôt ;)

m A d y n - :)

Secret (cliquez pour afficher)
999999999999999999999999999999999999999999999999999999999 : neuf cent quatre-vingt-dix-neuf decillions neuf cent quatre-vingt-dix-neuf nonilliards neuf cent quatre-vingt-dix-neuf nonillions neuf cent quatre-vingt-dix-neuf octilliards neuf cent quatre-vingt-dix-neuf octillions neuf cent quatre-vingt-dix-neuf sextiliards neuf cent quatre-vingt-dix-neuf sextillions neuf cent quatre-vingt-dix-neuf quintilliards neuf cent quatre-vingt-dix-neuf quintillions neuf cent quatre-vingt-dix-neuf quadrillards neuf cent quatre-vingt-dix-neuf quadrillons neuf cent quatre-vingt-dix-neuf trilliards neuf cent quatre-vingt-dix-neuf trillions neuf cent quatre-vingt-dix-neuf billiards neuf cent quatre-vingt-dix-neuf billions neuf cent quatre-vingt-dix-neuf milliards neuf cent quatre-vingt-dix-neuf millions neuf cent quatre-vingt-dix-neuf mille neuf cent quatre-vingt-dix-neuf
 
Hors ligne Quadehar # Posté le 04/04/2006 à 23:17:14
Avatar
Groupe : Membres
je ne suis pas d'accord pour le == 'u' pour le 'x', parce que par exemple : des objets perdus.

Wii Motion - Site sur la Wii proposant de nombreuses news, des dossiers, des previews, des tests et un forum.
 

Retour au forum "PHP" ou à la liste des forums

Vous devez être inscrit pour pouvoir poster des messages

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 99 Zéros connectés | Requêtes SQL 7 requêtes | Temps de génération de la page : Total (SQL) 0.3579s (0.3387s)