Un script en php un peu moche
Fermé
Arij86
Messages postés
124
Date d'inscription
vendredi 9 mai 2008
Statut
Membre
Dernière intervention
21 avril 2011
-
17 juil. 2008 à 04:03
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 - 19 juil. 2008 à 23:10
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 - 19 juil. 2008 à 23:10
A voir également:
- Un script en php un peu moche
- Script vidéo youtube - Guide
- Easy php - Télécharger - Divers Web & Internet
- Ghost script - Télécharger - Polices de caractères
- Microsoft activation script - Accueil - Windows
- Script bat - Guide
6 réponses
mype
Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
436
17 juil. 2008 à 04:52
17 juil. 2008 à 04:52
tu pourrais peu etre faire un switch
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
17 juil. 2008 à 08:41
17 juil. 2008 à 08:41
Bjr
Oui en utilisant un tableau par exemple
PhP
Il y a 10 types de personnes dans le monde : ceux qui comprennent le binaire et les autres ...
Oui en utilisant un tableau par exemple
<?php $categories = array(); $categories[]="sport" ; $categories[]="economique"; $categories[]="politique"; $categories[]="artistique"; $categories[]="culture"; $categories[]="international"; $categories[]="interview"; $categories[]="juridique"; $categories[]="sociale"; $categories[]="sondage"; function voirCategorie($categorie) { global $categories; if (in_array($categorie,$categories)) { return "../".$categorie."/contenu" ; } else { return ""; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> </head> <body> <?php echo "Voir=".voirCategorie("politique")."<br />"; echo "Voir=".voirCategorie("sondage")."<br />"; echo "Voir=".voirCategorie("sciences")."<br />"; ?> </body>--
PhP
Il y a 10 types de personnes dans le monde : ceux qui comprennent le binaire et les autres ...
Absinthe06
Messages postés
102
Date d'inscription
vendredi 11 juillet 2008
Statut
Membre
Dernière intervention
7 juillet 2010
11
17 juil. 2008 à 08:43
17 juil. 2008 à 08:43
parfaitement d'accord avec mype, utilise plutot un truc comme ca :
Voila, c'est plus propre, et ca te permet tout de même de verifier que tu affiche une catégorie existante, ou d'afficher un message d'erreur si ce n'est pas le cas ;)
switch($categorie) { case 'sport' : case 'economique' : case 'politique' : case 'artisique' : case 'culture' : case 'international' : case 'juridique' : case 'interview' : case 'social' : case 'sondage' : $bool = true; break; default : $bool = false; break; } if($bool) $voir="../".$categorie."/contenu" ; else echo 'Erreur : catégorie inexistante';
Voila, c'est plus propre, et ca te permet tout de même de verifier que tu affiche une catégorie existante, ou d'afficher un message d'erreur si ce n'est pas le cas ;)
Arij86
Messages postés
124
Date d'inscription
vendredi 9 mai 2008
Statut
Membre
Dernière intervention
21 avril 2011
6
17 juil. 2008 à 21:54
17 juil. 2008 à 21:54
Merci beaucoup , mais j'ai oublié de dire que pour le contenu il change aussi mais je connais le nom de chaque contenu : genre
if ($categorie==$a)
{
$voir="../".$categorie."/df753be3ebdff5c3e8c01bc9b1f50b1d" ;
}
//economique
elseif($categorie==$b)
{
$voir="../".$categorie."/be8623b1ae813c678e8999c1bec24a1f" ;
}
.......etc
je fais deux switch ?!!
if ($categorie==$a)
{
$voir="../".$categorie."/df753be3ebdff5c3e8c01bc9b1f50b1d" ;
}
//economique
elseif($categorie==$b)
{
$voir="../".$categorie."/be8623b1ae813c678e8999c1bec24a1f" ;
}
.......etc
je fais deux switch ?!!
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
17 juil. 2008 à 22:35
17 juil. 2008 à 22:35
Non tu utilises un tableau associatif
<?php $categories = array(); $categories["sport"]="3df753be3ebdff5c3e8c01bc9b1f50b1d"; $categories["politique"]="be8623b1ae813c678e8999c1bec24a1f"; // etc ... function voirCategorie($categorie) { global $categories; if (isset($categories[$categorie])) { return "../".$categorie."/".$categories[$categorie]; } else { return ""; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> </head> <body> <?php echo "Voir=".voirCategorie("politique")."<br />"; echo "Voir=".voirCategorie("sport")."<br />"; echo "Voir=".voirCategorie("sciences")."<br />"; ?> </body>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Arij86
Messages postés
124
Date d'inscription
vendredi 9 mai 2008
Statut
Membre
Dernière intervention
21 avril 2011
6
18 juil. 2008 à 04:19
18 juil. 2008 à 04:19
j'ai misi ton code mais ça na pas marché sniif ,voila ce que j'ai mis :
au début j'ai une variable nommé $categorie qui contient la nom de ma catégorie
//mon tableau
$categories = array();
$categories["sport"]="df753be3ebdff5c3e8c01bc9b1f50b1d";
$categories["economique"]="be8623b1ae813c678e8999c1bec24a1f";
$categories["politique"]="0e0eba5c26f15ccd1dce4bc7c379ab4e";
$categories["artistique"]="803df6248ca47867463c83d0220b89e7";
$categories["culture"]="69d062ba64bf77c4ea58fb6d2761f26b";
$categories["international"]="5ba59a02f4385ca1a0d86163d7faf10b";
$categories["interview"]="92db2d49fcb8742ea6f654cdc2234b45";
$categories["juridique"]="076aa3739b63df09e6276a9f09280422";
$categories["international"]="5ba59a02f4385ca1a0d86163d7faf10b";
$categories["sociale"]="56c9b81e3446d1cc3114c3fd85f311e4";
$categories["sondage"]="4d7c95f24ab388838fbe0688780a9b40";
function voirCategorie($categorie)
{
global $categories;
if (isset($categories[$categorie]))
{
//je construit ma variable $voir
$voir= "../".$categorie."/".$categories[$categorie];
}
else
{
return "";
}
}
et aprés quand j'utilise cet variable dans un Url ba ça marche pas ca donne un url du genre
nomdudossier/.php?i=num
cad que la fonction retourne ça return ""
j'ai misi ton code mais ça na pas marché sniif ,voila ce que j'ai mis :
au début j'ai une variable nommé $categorie qui contient la nom de ma catégorie
//mon tableau
$categories = array();
$categories["sport"]="df753be3ebdff5c3e8c01bc9b1f50b1d";
$categories["economique"]="be8623b1ae813c678e8999c1bec24a1f";
$categories["politique"]="0e0eba5c26f15ccd1dce4bc7c379ab4e";
$categories["artistique"]="803df6248ca47867463c83d0220b89e7";
$categories["culture"]="69d062ba64bf77c4ea58fb6d2761f26b";
$categories["international"]="5ba59a02f4385ca1a0d86163d7faf10b";
$categories["interview"]="92db2d49fcb8742ea6f654cdc2234b45";
$categories["juridique"]="076aa3739b63df09e6276a9f09280422";
$categories["international"]="5ba59a02f4385ca1a0d86163d7faf10b";
$categories["sociale"]="56c9b81e3446d1cc3114c3fd85f311e4";
$categories["sondage"]="4d7c95f24ab388838fbe0688780a9b40";
function voirCategorie($categorie)
{
global $categories;
if (isset($categories[$categorie]))
{
//je construit ma variable $voir
$voir= "../".$categorie."/".$categories[$categorie];
}
else
{
return "";
}
}
et aprés quand j'utilise cet variable dans un Url ba ça marche pas ca donne un url du genre
nomdudossier/.php?i=num
cad que la fonction retourne :
else
{
return "";
}
et que la vérification n'est pas correct du isset ,je dois changer quelque chose ?!
merci ^^
au début j'ai une variable nommé $categorie qui contient la nom de ma catégorie
//mon tableau
$categories = array();
$categories["sport"]="df753be3ebdff5c3e8c01bc9b1f50b1d";
$categories["economique"]="be8623b1ae813c678e8999c1bec24a1f";
$categories["politique"]="0e0eba5c26f15ccd1dce4bc7c379ab4e";
$categories["artistique"]="803df6248ca47867463c83d0220b89e7";
$categories["culture"]="69d062ba64bf77c4ea58fb6d2761f26b";
$categories["international"]="5ba59a02f4385ca1a0d86163d7faf10b";
$categories["interview"]="92db2d49fcb8742ea6f654cdc2234b45";
$categories["juridique"]="076aa3739b63df09e6276a9f09280422";
$categories["international"]="5ba59a02f4385ca1a0d86163d7faf10b";
$categories["sociale"]="56c9b81e3446d1cc3114c3fd85f311e4";
$categories["sondage"]="4d7c95f24ab388838fbe0688780a9b40";
function voirCategorie($categorie)
{
global $categories;
if (isset($categories[$categorie]))
{
//je construit ma variable $voir
$voir= "../".$categorie."/".$categories[$categorie];
}
else
{
return "";
}
}
et aprés quand j'utilise cet variable dans un Url ba ça marche pas ca donne un url du genre
nomdudossier/.php?i=num
cad que la fonction retourne ça return ""
j'ai misi ton code mais ça na pas marché sniif ,voila ce que j'ai mis :
au début j'ai une variable nommé $categorie qui contient la nom de ma catégorie
//mon tableau
$categories = array();
$categories["sport"]="df753be3ebdff5c3e8c01bc9b1f50b1d";
$categories["economique"]="be8623b1ae813c678e8999c1bec24a1f";
$categories["politique"]="0e0eba5c26f15ccd1dce4bc7c379ab4e";
$categories["artistique"]="803df6248ca47867463c83d0220b89e7";
$categories["culture"]="69d062ba64bf77c4ea58fb6d2761f26b";
$categories["international"]="5ba59a02f4385ca1a0d86163d7faf10b";
$categories["interview"]="92db2d49fcb8742ea6f654cdc2234b45";
$categories["juridique"]="076aa3739b63df09e6276a9f09280422";
$categories["international"]="5ba59a02f4385ca1a0d86163d7faf10b";
$categories["sociale"]="56c9b81e3446d1cc3114c3fd85f311e4";
$categories["sondage"]="4d7c95f24ab388838fbe0688780a9b40";
function voirCategorie($categorie)
{
global $categories;
if (isset($categories[$categorie]))
{
//je construit ma variable $voir
$voir= "../".$categorie."/".$categories[$categorie];
}
else
{
return "";
}
}
et aprés quand j'utilise cet variable dans un Url ba ça marche pas ca donne un url du genre
nomdudossier/.php?i=num
cad que la fonction retourne :
else
{
return "";
}
et que la vérification n'est pas correct du isset ,je dois changer quelque chose ?!
merci ^^
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
18 juil. 2008 à 18:09
18 juil. 2008 à 18:09
Bsr
Il faudrait que tui donnes le code PHP où tu construis ton url en appellant la fonction voirCategorie() car tout le reste me semble correct.
Il faudrait que tui donnes le code PHP où tu construis ton url en appellant la fonction voirCategorie() car tout le reste me semble correct.
Arij86
Messages postés
124
Date d'inscription
vendredi 9 mai 2008
Statut
Membre
Dernière intervention
21 avril 2011
6
19 juil. 2008 à 15:09
19 juil. 2008 à 15:09
Merci beaucoup ,dsl je n'ai pas pu répondre avant car je suis un peu malade
bonne journée ;)
bonne journée ;)
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
19 juil. 2008 à 17:30
19 juil. 2008 à 17:30
Salut,
a mon avis ton principe de fonction pêche
ça ne sert à rien de mettre une variable globale $categories dedans ta fonction ça "écrase" celle que tu as définie plus haut dans ton code
il vaut mieux lui passer la variable, même si c'est un array lors de l'appel de celle çi
et n'oublie pas de faire le return de ce que fait la fonction:
et tu appelles ta fonction par voirCategorie($categorie,$categories);
a mon avis ton principe de fonction pêche
ça ne sert à rien de mettre une variable globale $categories dedans ta fonction ça "écrase" celle que tu as définie plus haut dans ton code
il vaut mieux lui passer la variable, même si c'est un array lors de l'appel de celle çi
et n'oublie pas de faire le return de ce que fait la fonction:
function voirCategorie($categorie,$categories){ if (isset($categories[$categorie])){ //je construit ma variable $voir $voir= "../".$categorie."/".$categories[$categorie]; return $voir; }else{ return ""; } }
et tu appelles ta fonction par voirCategorie($categorie,$categories);
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
>
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
19 juil. 2008 à 17:39
19 juil. 2008 à 17:39
Bjr
Bien sûr que non ça n'écrase pas le contenu d'une variable de la redéfinir en global à l'intérieur d'une fonction !
Le préfixe global sert à l'empêcher justement. ;-)
Si c'était le cas alors les variables globales seraient tout simplement inutiles.
Cela dit on peut aussi passer le tableau $categories en paramètre naturellement.
Ici le pb vient plutôt d'une mauvaise utilisation de la fonction voirCategorie() que de la fct elle-même.
Bien sûr que non ça n'écrase pas le contenu d'une variable de la redéfinir en global à l'intérieur d'une fonction !
Le préfixe global sert à l'empêcher justement. ;-)
Si c'était le cas alors les variables globales seraient tout simplement inutiles.
Cela dit on peut aussi passer le tableau $categories en paramètre naturellement.
Ici le pb vient plutôt d'une mauvaise utilisation de la fonction voirCategorie() que de la fct elle-même.
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
>
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
19 juil. 2008 à 17:47
19 juil. 2008 à 17:47
Oui tu as raison pour Global, mais perso je pré ferrai la définir comme globale dès le départ plutôt que dans la fonction
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
>
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
19 juil. 2008 à 23:10
19 juil. 2008 à 23:10
Oui c'est vrai qu'utiliser des variables globales c'est pas top car ça lie la fonction à une variable externe.
En général en PHP je me cantonne aux tableaux superglobaux prédéfinis et je n'ai pas besoin des variables globales car je préfère et de loin créer des classes d'objet. Le hic c'est que pour une raison que j'ignore les gens trouvent souvent que c'est plus compliqué
En général en PHP je me cantonne aux tableaux superglobaux prédéfinis et je n'ai pas besoin des variables globales car je préfère et de loin créer des classes d'objet. Le hic c'est que pour une raison que j'ignore les gens trouvent souvent que c'est plus compliqué