IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Utilisation d'une classe dans un programme ajax [PHP 5.6]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut Utilisation d'une classe dans un programme ajax
    Bonjour,

    J'ai un programme PHP Ajax, donc appelé par une fonction Javascript Ajax, qui ne trouve pas la classe demandée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    use Application\Model\DiplomeEnsfea;
    // ...
    $obj_diplome_ensfea = new DiplomeEnsfea();
    Et dans error.log d'Apache, j'ai ça :
    [Fri Apr 06 09:41:56.992092 2018] [:error] [pid 12927] [client 127.0.0.1:36654] PHP Fatal error: Class 'Application\\Model\\DiplomeEnsfea' not found
    Le programme PHP Ajax est dans Application/ajax/ et c'est via l'URL rewriting qu'il est appelé, selon cette règle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule ^([a-zA-Z\/]+)\/(aj_)([a-zA-Z_]+)$ Application/ajax/aj_$3.php [L]
    Qu'est-ce qui coince ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  2. #2
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    Je m'auto-réponds...

    Comme j'appelle directement le programme Ajax, ça ne passe pas par l'auto-loader qui est dans index.php.

    Je vais donc corriger ça.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 704
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 704
    Par défaut
    que cet URL soit appelé par du code JavaScript pour faire de l'AJAX ou directement par le navigateur ne change pas grand chose côté serveur.
    pour utiliser une classe, il faut que le fichier de définition de la classe soit inclus soir directement soit en incluant un chargeur de classes (https://secure.php.net/language.oop5.autoload). le chargeur de classes peut aussi être défini dans le fichier php.ini ou dans un fichier .htaccess


    P.S. : loupé, je n'avais pas vu le message de 10 h 25

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 25/12/2006, 21h45
  2. [Débutant] Utilisation d'une classe dans une servlet
    Par stokoma1981 dans le forum Servlets/JSP
    Réponses: 9
    Dernier message: 28/09/2006, 16h11
  3. Réponses: 4
    Dernier message: 25/07/2006, 17h30
  4. Utilisation d'une classe dans un autre fichier
    Par melotron dans le forum Général Python
    Réponses: 1
    Dernier message: 09/07/2006, 14h11
  5. [POO] Utilisation d'une classe dans une classe !
    Par Okinou dans le forum Langage
    Réponses: 3
    Dernier message: 16/02/2006, 15h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo