probleme formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : probleme formulaire

Re: probleme formulaire

par noiise » 09 févr. 2012, 16:44

ok ça semble un peu plus clair !
je vais voir ça au pire je reposerai une question
:wink:

Re: probleme formulaire

par Shenryu » 09 févr. 2012, 16:02

-est ce que les constantes définies sont disponibles sur toute les pages un peu comme les super globales ?
Oui quand elles sont définies comme là. Si tu définies une constante dans une classe, elle ne sera accessible que dans ta classe (self::MaConstante). Si tu définies une constante dans ton index.php qui va appeler cette classe, tu pourras accéder à cette constante.
-est ce que je suis obligé de redéfinir tous les chemins de fichiers des autres pages de mon site avec cette méthodes pour éviter d'éventuels erreurs en d'autres termes est ce que des chemins de fichiers définis en relatifs peuvent coexister avec des chemins définis en absolus parce que ça peut fonctionner en local mais sur un autre serveur ...?
Pour éviter les problèmes d'erreurs, c'est préférable. Maintenant, je pense que seul le ROOT_PATH est nécessaire. Derrière tu connais ton arborescence et cela ne doit pas poser de problème. C'est juste pour faciliter la maintenance et l'accession à tes fichiers.
Imagine que tu aies envie de changer ton arborescence, ici tu n'as qu'une modification à faire. Ce qui n'est pas le cas sans l'utilisation de constantes. De même sur un autre serveur, tu n'auras qu'à changer l'accès si ton arborescence change.
-en fin pourquoi dans mon arborescence je ne peux pas appeler mon contrôleur de page enregistrer_activites_cont.inc.php de façon relative ?
En fait, c'est tout à fait faisable. Maintenant l'utilisation de chemins relatifs est beaucoup plus lent et je trouve ça beaucoup plus bordélique. Arrivé à un moment, l'adresse est illisible et tu ne sais plus trop où tu te trouves dans l'arborescence. Avec une adresse absolue, tu n'as pas ce problème.
De même si tu as des appels dans des sous-répertoires etc., tu t'y retrouveras plus facilement.

Re: probleme formulaire

par noiise » 09 févr. 2012, 15:50

Merci pour ta réponse shenryu !
je vais creusé ta solution je sais pas encore si elle répond à ma question j'ai pas encore essayé.
je perds un peu mon latin avec les chemins relatifs et absolus même si j'ai lu pas mal de tutos plus ou moins bien expliqués et quand tu crois avoir compris c'est là que ça déconne :)
c'est vrai que je ne pense pas souvent à utiliser les constantes pour des adresses absolues.
du coup j'ai quelques questions qui me viennent à l'esprit.
-est ce que les constantes définies sont disponibles sur toute les pages un peu comme les super globales ?
-est ce que je suis obligé de redéfinir tous les chemins de fichiers des autres pages de mon site avec cette méthodes pour éviter d'éventuels erreurs en d'autres termes est ce que des chemins de fichiers définis en relatifs peuvent coexister avec des chemins définis en absolus parce que ça peut fonctionner en local mais sur un autre serveur ...?
-en fin pourquoi dans mon arborescence je ne peux pas appeler mon contrôleur de page enregistrer_activites_cont.inc.php de façon relative ?

Re: probleme formulaire

par Shenryu » 09 févr. 2012, 13:57

Salut,
car dans mon cas index .php inclus au départ ces trois fichiers et donc les chemins de fichiers sont relatifs à celui-ci et là
Ca n'empêche pas de travailler avec une URL absolue.

Tu peux faire quelque chose comme ça dans ton index :
define ('ROOT_PATH', realpath(dirname(__FILE__))); // Adresse absolue de ton index.php
define ('CONTROLLER_PATH', ROOT_PATH .'/Controleur'); // Adresse absolue de ton répertoire contrôleur
define ('MODEL_PATH', ROOT_PATH .'/Modele'); // Adresse absolue de ton répertoire modèle
define ('VIEW_PATH', ROOT_PATH .'/Vue'); // Adresse absolue de ton répertoire vue
Ensuite tu appelles tes fichiers à partir de ces constantes.

J'espère que ça répond à ton problème ?

++

probleme formulaire

par noiise » 09 févr. 2012, 13:00

Bonjour à tous
je débute en programmation web et j'ai pas mal avancé sur un site que je veux créer.Voilà mon soucis.Je refais actuellement mon site selon le modèle MVC histoire d'avoir un code structuré avec des dossiers bien définis. Seulement je suis bloqué dans mon projet pour enregistrer des données dans un formulaire.

L'arborescence de mes dossiers est comme ceci (je n'ai pas tout mis car c'est juste un problème
je pense de logique mais bon là je bloque):

Monsite
|
|
|-index.php
|
|-Controleur
|-----------|
|-----------enregistrer
|---------------------|
|----------------------enregistrer_activites_cont.inc.php
|
|
|
|-Modele
|-------|
|--------enregistrer
|--------------------|enregistrer_activites_mod.inc.php
|
|
|
|
|-Vue
|---|
|----enrgistrer
|----------------|enregistrer_activites_vue.inc.php

index.php: controleur général de mon module administration (qui gère les variable $_GET des liens du menu d'administration) et qui choisit le controleur correspondant à une page par ex enregistrer_activites_cont.inc.php.
Modele :accède à une Bdd .
vue: gère l'affichage des pages et contient les formulaires.

Mon problème est que je voudrais savoir comment indiquer dans mon formulaire que le traitement doit être fait par
le controleur enregistrer_activites_cont.inc.php pour qu'il puisse afficher à nouveau la page contenant le formulaire et le menu.car dans mon cas index .php inclus au départ ces trois fichiers et donc les chemins de fichiers sont relatifs à celui-ci et là où ça coince c'est au moment de valider car j'ai des messages d'erreurs me disant que enregistrer_activites_vue.inc.php n'est pas trouvée.
comment faire pour que ma vue soit affichée avec le formulaire dans tous les cas de figures car en plus de ça j'ai peur que les fichiers inclus dans ma vue soient aussi zappés. Quelle serait la bonne méthode ?
Merci pour votre aide