begin process at 2012 02 15 23:56:11
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Javascript / DHTML

 > AFFICHER GÉNÉRIQUEMENT PLUSIEURS FICHIERS DANS IFRAME AVEC 2 FICHIERS PHP

AFFICHER GÉNÉRIQUEMENT PLUSIEURS FICHIERS DANS IFRAME AVEC 2 FICHIERS PHP


 Information sur la source

Note :
Aucune note
Catégorie :Javascript / DHTML Niveau :Débutant Date de création :04/06/2005 Date de mise à jour :06/06/2005 13:14:54 Vu / téléchargé :6 963 / 593

Auteur : originalcompo

Ecrire un message privé
Site perso
Commentaire sur cette source (26)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Le but de ce script est de montrer comment on peut afficher de manière générique des fichiers à l'intérieur d'un autre fichier.

Initialement, l'affichage se faisait dans un iframe, mais grace aux critiques et conseils des participants, j'ai pu grandement améliorer ce script, dont voici la dernière version

(Merci à ceux qui m'ont apportés des conseils...)

PS:  je ne change pas le titre pour ne pas que l'on croit que c'est une nouvelle source

Source

  • Le code se trouve dans 1 php, les 3 autres fichiers sont des fichiers exemples "bidons"
Le code se trouve dans 1 php, les 3 autres fichiers sont des fichiers exemples "bidons"


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

04 juin 2005 09:14:42 :
faute d'orthographe!
04 juin 2005 12:12:52 :
j'ai changé le code de catégorie, désolé
04 juin 2005 16:54:50 :
En fait, mon but est d'afficher des fichiers sources, c'est à dire non interprétés... ce qui veut dire que mon code n'était pas correct si le fichier contenait par exemple <... ce qui est assez génant quand on veut afficher les sources d'un langage. J'ai donc modifié le fichier generique2.php (en m'inspirant d'un source que j'ai trouvé sur ce forum et que je cite dans le code). Et maintenant, ca marche "vraiment" !!!
06 juin 2005 13:14:54 :
Merci à tout ceux qui m'ont permis par leur critique d'amméliorer le code, dont voici la dernière version définitive...

 Sources du même auteur

Source avec Zip DÉBOGAGE D'UN CODE PHP (SUIVIT DES VARIABLES)
Source avec Zip Source avec une capture HISTOGRAMME EN PHP AVEC GD. PROGRAMMATION OBJET
Source avec Zip Source avec une capture GÉNÉRATION D'HISTOGRAMMES EN PHP

 Sources de la même categorie

Source avec Zip Source avec une capture PHPJSVFORM : DES CLASSES PHP, DES JAVASCRIPTS POUR CRÉER FAC... par synanceia
BOUTON POUR SITE WEB PAYMENT par Tom56340
Source avec Zip Source avec une capture PETIT CLIENT + AJAX + PHP par kiki67100
Source avec Zip Source avec une capture BOÎTE À ONGLETS / MENUS ET SOUS-MENUS / JAVASCRIPT / PHP / D... par Heirem
Source avec Zip Source avec une capture JUKEBOX EN LIGNE par Flachy Joe

Commentaires et avis

Commentaire de coucou747 le 04/06/2005 11:32:00 administrateur CS

c'est du html...

Commentaire de originalcompo le 04/06/2005 12:06:11

Désolé, j'ai pas compris la remarque:
C'est du html qui utilise des fonctions php, c'est ca que tu voulais dire?
Ou bien tu veux dire qu'on peut faire idem en html pur ? Si oui ca m'interesse si tu peux me fournir un début d'explication !

Commentaire de originalcompo le 04/06/2005 12:09:40

euh, pardon, je crois que j'ai compris, je corrige ca...

Commentaire de coucou747 le 04/06/2005 12:33:32 administrateur CS

bah enlèves tes echo, et mets tes liens avec des targets...

Commentaire de fg85 le 04/06/2005 12:47:26

Il faudrai que tu fasse un  file_exists (http://fr.php.net/manual/fr/function.file-exists.php) même si ce script n'a pas besoin d'être protégé.
De plus une variable qui n'est pas traité avant d'être inséré est très dangereuse  (ex : $_GET["source"])

----------------------
http://fg.logiciel.free.fr

Commentaire de originalcompo le 04/06/2005 12:55:32

Je dois encore être plus nul que je le pense, parceque je comprends pas tout:

je peux effectivement remplacer une partie du code php par du javascript, notamment pour générer les boutons...
je peux effectivement remplacer les boutons par des liens, ce qui va m'obliger à nommer le formulaire "TOTO" et rajouter dans la balise <a onClick ="document.TOTO.submit(); ...
Mais à part que ca change de look, je vois pas trop ce que j'y gagne... et ce qui m'interessait au départ, c'est d'afficher à partir d'un seul script unique différents fichiers dans un iframe.

Y-a-t-il un moyen (plus simple) autre que celui que j'ai fait?

Y-a-t-il une raison pour absolument utiliser du javascript plutot que du php là où je l'ai fait?

Ou est-ce que je suis totalement à côté de mes pompes? Faut dire que tes commentaires sont plutôt vagues à mon gout... Faut pas oublier que je débute de chez débute en php. J'ai eu l'idée de pondre ce code quand j'ai découvert la fonction include, le reste tien du miracle (enfin, j'ai une super expérience de programmation en Delphi, mais c'est autre chose...)

Commentaire de originalcompo le 04/06/2005 12:59:06

Merci FG85 pour l'histoire de "la variable non traité", je vais me renseigner pour voir de quoi il s'agit... (quand au 1er point, j'avoue que je n'avais pas pour but de faire un programme qui prévoit toutes les erreurs possibles et imaginables, mais le problème de sécurité, ca m'intrigue)

Commentaire de Anthomicro le 04/06/2005 14:57:52

Salut,

heu quel est le but de cette source (désolé si j'ai pas compris...)

Commentaire de originalcompo le 04/06/2005 15:47:14

But de la source:
En fait, sur mon site je propose des composants Delphi. Certains meritent explications, d'autre pas.
Pour ces derniers, j'ai décidé d'ouvrir une fiche toute simple qui propose le code dans un iframe.

Mais j'avais pas envie de générer 10 fichiers html identiques avec juste le "src" du "iframe" qui change.

J'y suis arrivé, mais apparemment coucou47 trouve que y'a des trucs à corriger, et soit je suis trop inculte en php pour comprendre les raisons, soit ses commentaires sont trop vagues...

Donc mon but est :

Faire une page web qui permet d'afficher un document à choisir parmis une liste prédéfinie de documents (txt, ou ce que tu veux).

Dans l'exemple tel que je l'ai programmé, il y a un bouton par fichier sélectionnable.
On clique, ca charge!

Si tu peut l'exécuter, c'est évident...

Je demandais conseil parceque faire un php qui s'appelle lui même (via le formulaire et $_SERVER["PHP_SELF"]) en appelant un deuxième php dans le frame, je trouvais ca un peu tordu et je me demandais si y'avait pas plus simple, mais vu mon niveau, je suis hyper satisfait par le résultat...
;-)

Commentaire de Loubiou le 05/06/2005 19:21:52

Hello !!
Le problème majeur avec les iframes c'est qu'elles sont bloquées par les antipubs comme norton symantec en autres !
Il faudrait plutot passer par un fichier JS lancé depuis une commande javascript !

Sinon, bonne source

Commentaire de Anthomicro le 05/06/2005 19:24:04

Ouais déjà, et faut changer d'antipub aussi (lol)

Commentaire de GAME2OVR le 06/06/2005 08:43:23

Déjà faudrait oublier les iframe c'est pas valid, et ce n'est pas pour rien qu'elles nont pas été ajouté au xhtml, au lieu de faire une ifram fait une include en php dans un div, ce qui justifirai un peu plus le fait que tu ai mis cette source dans PHP....

Commentaire de Anthomicro le 06/06/2005 08:53:33

bah t'as le XHTML transitionnal pour les frames, mais bon perso je considère pas ça comme du xhtml, c'est du html bricolé...

Bref ouais c'est pas valide XHTML strict, ça nuit au réféncement, bref je vois pas pourquoi on les utilise, ça ne sert pas à grand chose.

a +

Commentaire de Loubiou le 06/06/2005 09:16:13

Dit moi GAME2OVR tu peux nous donner un exemple d'une ligne de code pour illustrer tes includes ce serait une bonne idée ça !!!!
En te remerciant par avance.

Commentaire de malalam le 06/06/2005 10:46:36 administrateur CS

hello,

quelques commentaires :
- tout d'abord, tant mieux si ce source te convient, c'est toujours TRES agreable, que l'on debute ou pas, de parvenir a ses fins :-)
- en effet, comme les autres, j'evite les iframes. Tu peux faire la meme chose sans iframes. Les div, pourquoi pas :-) De plus si tu tiens a tes barres eventuelles de scroll etc...quelques styles et c'est regle (overflow...).
-  for ($i=0, $n = count($line); $i < $n; $i++) : on evite ca en php. La boucle for () evalue la condition qu'on lui passe a chaque iteration. Ce qui signifie que pour i allant de 0 a 99(par exemple), ton code va effectuer 100 fois le count ($line), ce qui, tu en conviendras, et meme si tu n'es pas un fan de vitesse ;-) est quand meme inutile. Et puis finalement, c'est plus clair d'ecrire ca :
$cptLine = count ($line);
for ($i=0, $n = $cptLine; $i < $n; $i++)
heu et la du coup je me rends compte que je n'ai pas compris l'interet du $n... ? (je ne l'avais pas vu lol).
$cptLine = count ($line);
for ($i = 0; $i < $cptLine; $i++)

Sinon c'est plutot propre pour un debut.

Commentaire de Loubiou le 06/06/2005 11:03:04

Ben je te remercie !!!

Mais en faite ce qu'il me faut c'est le moyen d'intégrer dans une page web un code php qui placerait une page contenant le plugin flash. A part un chargement depuis un fichier JS en javascript je ne vois pas bien comment faire.
Dans ton code, je ne vois pas où tu met le lien pointant sur la page à afficher ?

Je te dit par avance où je vais mettre ce code : sur GTBann !

En effet je viens de mettre au point un système de création de bannières en flash avec 4 Menus dynamiques interactifs et stats en temps réel. On peut intégrer ses propres images JPG ou SWF si les 770 images des bibliothèques ne plaisent pas !
J'ai aussi créé un moteur de référencement pour les bannières des clients (version payante).
GTBann existe en 3 versions dont une gratuite.
Si tu vas tester le truc, tu verras que je donne un code iframe qui n'est pas idéal avec tous les antispubs .... arfff

Commentaire de originalcompo le 06/06/2005 13:26:11

OK pour le iframe: je l'ai enlevé
euhh GAME2OVR, je me demande si c'est ton image ou ton nom, mais j'ai presque l'impression d'avoir été agressé par ton message !! mais merci quand même parceque là, du coup, j'ai utilisé un div associé à javascript (chose que je fais déjà couremment dans mon site) ce qui m'a permis de ne plus avoir qu'un seul fichier php. Je ne l'avais pas fait avant parceque jusqu'à l'avant dernière correction, je ne voyais pas comment faire a part utiliser un include...

Ok pour le
  $cptLine = count ($line);
  for ($i=0, $n = $cptLine; $i < $n; $i++)
Pour ma défense, c'était un simple copier/coller de code (que je citais d'ailleurs) que j'avais récupéré... j'ai pas lu à fond je l'avoue ... même si je suis toujours pas "fan" de vitesse ;-)

a+

Et merci encore pour vos critiques, elles ont été constructives pour la plupart...

Commentaire de originalcompo le 06/06/2005 13:30:05

dommage que la boucle for est évaluée à chaque fois en php, parcequ'en delphi, c'est pas le cas: c'est tout l'interet et la différence avec les while et repeat... Mais bon, d'un autre cote, ca vient peut etre du fait que php est interprete et pas compilé...

Commentaire de malalam le 06/06/2005 13:34:42 administrateur CS

Alors la...aucune idee :-)
Et en effet c'est dommage, tout a fait d'accord.

Commentaire de coucou747 le 06/06/2005 15:19:09 administrateur CS

non, ça ne vient pas de la...

Commentaire de originalcompo le 06/06/2005 16:42:30

ah? et puisque tu as l'air de savoir, ca vient d'où, s'il te plait?

Commentaire de malalam le 06/06/2005 16:50:52 administrateur CS

Peut-etre simplement parce que le php est un petit cousin du C, et qu'en C(C++ la boucle for() fonctionne aussi comme ca.

Commentaire de Anthomicro le 06/06/2005 16:51:20

Bah ça vient du langage qu'est comme ça, de toute façon c'est plus intelligent de faire comme ça, si ta valeur maximale change en cours de bouclage, t'es bonbon en delphi apparemment, pas en php.

Commentaire de coucou747 le 06/06/2005 16:52:00 administrateur CS

c'est pas la norme, c'est tout, mais on peut parvennir à ce genre de choses en compilé et en interprété...

Commentaire de originalcompo le 06/06/2005 17:10:29

"si ta valeur maximale change en cours de bouclage, t'es bonbon en delphi apparemment, pas en php"

c'est tout a fait vrai, sauf que tu semble voir ca comme un inconvenient, et moi (surement par habitude, encore que j'ai commencé par le C), je vois ca comme de la rigueur de programmation 'c'est un point de vue, ne vous acharnez pas sur moi ;-) ! ).

(il ne me viendrait pas à l'idée d'utiliser un for si je sais que le nombre d'iteration que je veux faire peux varier)

D'autant plus qu'on peut faire la même chose avec un for et un while (en supposant que le while existe en php, mais ca m'etonnerait que non)

Commentaire de malalam le 06/06/2005 17:15:38 administrateur CS

=> D'autant plus qu'on peut faire la même chose avec un for et un while (en supposant que le while existe en php, mais ca m'etonnerait que non)

Manquerait plus qu'ca !! :-(

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,967 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales