Accueil   Accueil    Forum   Forum    Download   Download    Livre d'or   Livre d'or    Contact   Contact    Liens Web   Liens Web

Pourrait on faire un index.php qui n'affiche rien ? - CMS KwsPHP - Le site clés en main

Colonne de gauche

Espace membre

Privé Masquer le formulaire de connexion


Se souvenir de moi ?


Mot de passe oublié

Menu

Forum

Sujets Importants

fleche basForum : Masquer l’entête

Accès rapide :

 

Effectuer une Recherche avancée OU


fleche bas[Résolu] Pourrait on faire un index.php qui n'affiche rien ?  [10 réponses]

fleche bas

chralu
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 8
Inscrit(e) le: 16 octobre 2012
Visiter son site
Imprimer Permalien lundi 14 janvier 2013 à 14:50  
Bonjour à tous,

ce topic est plus une discussion autour de l'architecture de KwsPHP qu'un rapport de bug. J'espère qu'il trouvera sa place ici.
Je ne connais que très peu KwsPHP, il est donc possible que je sois passé à côté de solutions. Je compte sur vous pour me recadrer (gentiment) smiley sg3agtoudoug3ag.jpg .

Sautons dans le vif du sujet.

En ajoutant la fonctionnalité de l'upload multiple au module mg3 je me suis confronté au problème suivant.

Comment faire, au sein d'un module, un script qui me retourne du JSon.
Une solution est de créer son script PHP dans le dossier du module. Il suffit ensuite de l'appeler par l'URL "modules/mg3/upload_json.php".

Sans rentrer dans les détails de mon cas pratique, Cette solution pose vite des problèmes de chemin (pour les include, les cibles de formulaires, etc ...) lorsqu'elle est utilisée à côté de scripts qui sont appelés de manière classique par l'intermédiaire de index.php : "index.php?mod=mg3&ac=(...)".


Mais alors, pourquoi ne pas appeler mon script par le biais de "index.php?mod=mg3&ac=upload_json.php" ?
Tout simplement parce que en faisant ça, la sortie JSon de mon script est "polluée" du HTML ajouté par index.php.


Je pense qu'une bonne solution à ce problème serait d'ajouter à KwsPHP un script dont le rôle serait un peu similaire à index.php, sauf qu'il n'afficherait rien, de manière à laisser la page du module afficher autre chose que du HTML si c'est nécessaire.

Qu'en pensez vous ?

Si mon post n'est pas clair, n'hésitez pas à poser des questions.
Bon après midi smiley sg3agg29g.gif




Infos CMS KwsPHP


Informations : Avant de poster un sujet sur le forum

Veuillez avant tout vérifiez la comparaison de vos fichiers sur votre site
Mon compte / Outils / Comparaison


La recherche avancée du forum (en ciblant au mieux les options de la recherche)
La Faq - La documentation - La documentation en vidéo - Le sujet "Install et Mise à jour"
Vous devez lire en priorité le topic de la 1.6 pour en découvrir ses fonctionnalités


Afficher



ΦOtocinclus
Administrateur
stars7.png


avatar
Hors ligne

Nombre de posts: 3163 (0.43/Jour)
Inscrit(e) le: 02 septembre 2006
Visiter son site
Imprimer Permalien lundi 14 janvier 2013 à 22:47  
Dans KwsPHP, toutes les sorties sont "tamponrisées". Donc si dans ton fichier tu détruis le tampon, plus rien ne doit polluer ta sortie JSON.

Je te propose donc de placer la commande
Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4. ob_end_clean();
  5.  
  6. #####!!!#####
  7. ?>
au début de ton fichier ./modules/mg3/upload_json.php.
Après tu fais ton traitement et tu ne devrais plus avoir que ce que tu veux en sortie.


LES C0NS, ÇA OSE TOUT. C'EST MÊME À ÇA QU'ON LES RECONNAÎT.

Michel Audiard


chralu
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 8
Inscrit(e) le: 16 octobre 2012
Visiter son site
Imprimer Permalien lundi 14 janvier 2013 à 23:08  
Ah merci pour cette info, Otocinclus. Je connaissais pas, et ça dépanne bien smiley sg3agg29g.gif

À noter que index.php ajoute aussi du code HTML après l'exécution du script. Il faut donc que le script interrompe son exécution à la fin.

Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php       
  2. ob_end_clean();
  3. ### votre code ici
  4. exit(0);
  5. ?>


Cette solution règle parfaitement mon problème. Cependant il est un peu dommage de laisser index.php faire tout un tas d'accés à la BD et créer une page HTML, pour ensuite tout jeter en bloc.

Cette solution reste, AMHA, un quick fix et ça vaut peut être le coup de discuter d'une solution plus saine. Qu'en pensez vous ?

Bonne soirée.



ΦOtocinclus
Administrateur
stars7.png


avatar
Hors ligne

Nombre de posts: 3163 (0.43/Jour)
Inscrit(e) le: 02 septembre 2006
Visiter son site
Imprimer Permalien lundi 14 janvier 2013 à 23:59  

Citation de chralu :
Cette solution règle parfaitement mon problème. Cependant il est un peu dommage de laisser index.php faire tout un tas d'accés à la BD et créer une page HTML, pour ensuite tout jeter en bloc.

Cette solution reste, AMHA, un quick fix et ça vaut peut être le coup de discuter d'une solution plus saine. Qu'en pensez vous ?


En fait tout dépend de ton besoin exact. Avec cette méthode tu as l'avantage de disposer de toutes les données interne de KwsPHP. Entre autre si l'internaute est membre, son grade, ses groupes d'appartenance, ... ça peut te permettre d'adapter ta réponse. Mais pour tout cela bien évidemment, les accès BDD sont nécessaires.

Maintenant si tu n'as besoin de rien de tout ça et que tu ne cherches qu'un accès via la racine du site, tu crées un fichier index2.php dans lequel tu mets juste un include de ton fichier "JSON" et le tour est joué.

Tu te doute bien qu'on ne peut pas créer un fichier d'appel "générique" spécifique à chaque cas. Libre à toi de créer ton fichier index_json.php à partir du fichier index.php "standard" en l'allégeant de tout ce qui te sert à rien.

Bonne soirée.


LES C0NS, ÇA OSE TOUT. C'EST MÊME À ÇA QU'ON LES RECONNAÎT.

Michel Audiard


σmike007
starsj7.png
Dieu Supreme


avatar
Hors ligne

Nombre de posts: 7551 (1.02/Jour)
Inscrit(e) le: 05 juillet 2006
Visiter son site
Imprimer Permalien mardi 15 janvier 2013 à 00:16  
Au passage, Kws a quelques pages qui s'appellent hors module mod=...&ac=...
mais pour avoir toujours la référence a la bdd il suffit juste de ces 2 lignes en début de fichiers


Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4. require_once './includes/fonctions.php';
  5. require_once './config.php';
  6.  
  7. #####!!!#####
  8. ?>


le config contenant l'include du connect tu es donc connecté à la bdd

ne pas oublier donc en fin de fichier

Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4. mysql_close();
  5. ob_end_flush();
  6.  
  7.  
  8. #####!!!#####
  9. ?>


et ainsi utiliser ton fichier "modules/mg3/upload_json.php" en appel direct enfin si j'ai bien suivi ce que tu souhaites

PS: j'ai bien pris note de ton message via notre module contact, nous sommes ouvert à tout partage et disponible par MP (Oto et moi-même) si besoin


Vous êtes satisfait de l'aide apportée !! Vous avez l'âme généreuse !!

Faite un don du montant souhaité
Un petit don (même de 1 euro) de chaque personne satisfaite permet de témoigner de votre reconnaissance pour le temps passé. merci


Mes Modules ou ceux que j'ai repris en V1.6 : ICI. Module Humour
bbcode_sup => Voir le forum dédié (youtube, daily, zoomimg, deezer, divx, clearbox, apostrophe word, etc...)


chralu
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 8
Inscrit(e) le: 16 octobre 2012
Visiter son site
Imprimer Permalien mardi 15 janvier 2013 à 00:16  

Citation de Otocinclus :

En fait tout dépend de ton besoin exact. Avec cette méthode tu as l'avantage de disposer de toutes les données interne de KwsPHP. Entre autre si l'internaute est membre, son grade, ses groupes d'appartenance, ... ça peut te permettre d'adapter ta réponse. Mais pour tout cela bien évidemment, les accès BDD sont nécessaires.


En fait, c'est plus les acces à la BD pour afficher la shoutbox, ou la liste des derniers messages, par exemple, qui me semblent superflus.


Citation de Otocinclus :

Libre à toi de prendre le fichier index.php "standard" est de l'alléger de tout ce qui te sert à rien.


J'ai envisagé cette solution, mais mon objectif est ensuite de partager les modifs apportées au module mg3. Son installation ne doit pas nécessiter de faire des modifs "à l'arrache" sur le moteur de KwsPHP.
C'est en fait pour ça que j'ai lancé ce topic en premier lieu smiley sg3agg29g.gif


Citation de Otocinclus :

Tu te doute bien qu'on ne peut pas créer un fichier d'appel "générique" spécifique à chaque cas.


Je suis parfaitement d'accord. Peut être qu'un fichier d'appel qui ne fait que les vérifications de base serait déjà pas mal. La vérification des droits de l'utilisateur serait ensuite laissé à la charge du module (on peut envisager d'extraire cette partie dans une bibliothèque pour la rendre plus simple à utiliser).

Par "vérification de base", j'entend principalement la vérification de l'existance du module et du script demandé, et probablement tout un tas d'autres trucs auxquels je ne pense pas smiley sg3agg29g.gif .


σmike007
starsj7.png
Dieu Supreme


avatar
Hors ligne

Nombre de posts: 7551 (1.02/Jour)
Inscrit(e) le: 05 juillet 2006
Visiter son site
Imprimer Permalien mardi 15 janvier 2013 à 00:40  
j'ai oublié un truc qd même avant les require_once il se peut qu'il faille en fct de ce que tu veuilles faire derrière, jouer avec le chdir avant l'appel

Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4. chdir('../../');
  5.  
  6. #####!!!#####
  7. ?>

Ce n'est pas obligatoire mais on peut être amené à jouer avec

pour ensuite revenir avec

Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4. chdir('./modules/mg3');
  5.  
  6. #####!!!#####
  7. ?>


bref là c'est toi qui voit suivant l'utilisation



Vous êtes satisfait de l'aide apportée !! Vous avez l'âme généreuse !!

Faite un don du montant souhaité
Un petit don (même de 1 euro) de chaque personne satisfaite permet de témoigner de votre reconnaissance pour le temps passé. merci


Mes Modules ou ceux que j'ai repris en V1.6 : ICI. Module Humour
bbcode_sup => Voir le forum dédié (youtube, daily, zoomimg, deezer, divx, clearbox, apostrophe word, etc...)


chralu
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 8
Inscrit(e) le: 16 octobre 2012
Visiter son site
Imprimer Permalien mardi 15 janvier 2013 à 10:16  

Citation de mike007 :
j'ai oublié un truc qd même avant les require_once il se peut qu'il faille en fct de ce que tu veuilles faire derrière, jouer avec le chdir avant l'appel

Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4. chdir('../../');
  5.  
  6. #####!!!#####
  7. ?>

Ce n'est pas obligatoire mais on peut être amené à jouer avec

pour ensuite revenir avec

Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4. chdir('./modules/mg3');
  5.  
  6. #####!!!#####
  7. ?>


bref là c'est toi qui voit suivant l'utilisation



Ah j'ai comme l'impression que le chdir() est la solution propre aux problèmes de chemins relatifs que j'ai rencontré.
C'est super, comme ca je vais pouvoir faire une version propre de l'upload multiple smiley sg3agg29g.gif

Allez je m'y colle.


σjacknikolson
starsj4.png
Posteur fou


avatar
Hors ligne

Nombre de posts: 652 (0.09/Jour)
Inscrit(e) le: 23 juin 2006
Visiter son site
Imprimer Permalien mardi 15 janvier 2013 à 20:59  
Bonjour chralu et bienvenu.

Je vois que tu travaille à une amélioration de la MG3 en ajoutant la possibilité d'upload multiple. C'est vrai que ça manque à cette galerie.

Juste une question, est ce une amélioration "perso" ou quelque chose que tu penses pouvoir faire partager à la communauté?

Je me permets de demander ça car j'utilise moi même énormément la MG3 sur beaucoup de mes sites et j'aurai quelques suggestions éventuelles d'améliorations à proposer. Malheureusement le codage et moi on n'est que très très lointains cousins de 18e degré et je n'ai pas lés compétences.

Merci si tu prends le temps de répondre.

Création de site internet Chambéry - Référencement seo de site internet à Chambéry -
Photographe de mariage Chambéry -


chralu
starsj1.png
Newbie


avatar
Hors ligne

Nombre de posts: 8
Inscrit(e) le: 16 octobre 2012
Visiter son site
Imprimer Permalien mercredi 16 janvier 2013 à 12:10  

Citation de jacknikolson :
Bonjour chralu et bienvenu.

Je vois que tu travaille à une amélioration de la MG3 en ajoutant la possibilité d'upload multiple. C'est vrai que ça manque à cette galerie.

Juste une question, est ce une amélioration "perso" ou quelque chose que tu penses pouvoir faire partager à la communauté?

Je me permets de demander ça car j'utilise moi même énormément la MG3 sur beaucoup de mes sites et j'aurai quelques suggestions éventuelles d'améliorations à proposer. Malheureusement le codage et moi on n'est que très très lointains cousins de 18e degré et je n'ai pas lés compétences.

Merci si tu prends le temps de répondre.



Bonjour Jacknikolson,

l'objectif est de partager l'amelioration. Je peaufine un peu ce que j'ai fait avant de le soumettre a l'equipe Kws.
Je tiendrai au courant des avancees sur ce topic.

a+ smiley sg3agg29g.gif

Réponse ci-dessus posté le mercredi 16 janvier 2013 : 09:58



J'ai ouvert un topic dédié à l'upload multiple dans mg3 ici.


σjacknikolson
starsj4.png
Posteur fou


avatar
Hors ligne

Nombre de posts: 652 (0.09/Jour)
Inscrit(e) le: 23 juin 2006
Visiter son site
Imprimer Permalien mercredi 16 janvier 2013 à 13:26  
Merci chralu.
J'essayerai de tester ton multiupload ce w-end, avant je n'aurai pas le temps.

Si par hasard tu continues à t'intéresser à des améliorations de la MG3, e, voici une qui serait plutôt intéressante. Je m'explique.

Lors de l'affichage des albums, la galerie fait une de requête DB ( pour le nombre d'albums, les titres etc), puis, pour l'affichage des miniatures des images on a ça:

Code PHP :
Pour copier le contenu exact du code,
Veuillez citer le message
  1. <?php  
  2. #####!!!#####
  3.  
  4.  
  5. $mg3_tmp.= '<img src="';
  6. $mg3_tmp.= mg3_alea_alb( $mg3_value );
  7. $mg3_tmp.= '" alt="" />';
  8.  
  9. #####!!!#####
  10. ?>


On fait appel à la fonction mg3_alea_alb() qui elle fait une requête DB à son tour (on est deja dans un foreach....)
ça fait vite pas mal de requêtes pour un site comme le mien ( http://www.hd-wallpaper.images-fonds.com ) puisque chaque album fait sa propre requête supplémentaire. Déjà que mon hébergeur se plaint, j'ose même pas imaginer quand il y aura 90 albums sur la HOME!

Si tu as une idée pour améliorer la chose, sans perdre la possibilité d'image aléatoire OU fixe selon le choix......ça pourrait être bien.



Création de site internet Chambéry - Référencement seo de site internet à Chambéry -
Photographe de mariage Chambéry -


fleche bas[Résolu] Pourrait on faire un index.php qui n'affiche rien ?  [10 réponses]