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 :

appelle d'une classe depuis un formulaire


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Webmaster
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 7
    Points
    7
    Par défaut appelle d'une classe depuis un formulaire
    bonsoir ,je suis une débutante en php 5 quelqu'un peut m'aider, je veux savoir comment je peux accéder à une classe (livre) et appeler sa méthode (ajouterLivre()) dans un formulaire d'ajout d'un livre .

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Un formulaire en un élément HTML, il n'a pas de rapport avec des classes qui sont des éléments PHP.

    Ton formulaire HTML peut avoir comme action un script PHP qui ferra tout ce que tu veux.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Webmaster
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    tout d'abord merci pour votre réponse, mais la page de formulaire est formulaireAjout.php , en + qu'est ce que je dois écrire dans l'action de formulaire pour accéder à la classe Livre ?

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ta question n'a pas de sens : un formulaire n'accède pas à une classe PHP.
    mais la page de formulaire est formulaireAjout.php
    Le formulaire a beau être dans un fichier .php, il reste un élément HTML traité par le navigateur.
    Le formulaire ne fait qu'une seule chose : transmettre des données vers le serveur.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Futur Membre du Club
    Femme Profil pro
    Webmaster
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    voilà mon formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     <?php
      include ("includes/Livre.class.php");
       $livre = new Livre();?>
       <?php // $livre->ajouterLivre();?>
      <form enctype="multipart/form-data" action="<?php $livre->ajouterLivre();?>" method="post">
      <table align="center">
      <tr><td class="active">Titre du livre : </td><td><input type="text" name="titre"></td></tr>
      <tr><td class="active">Image : </td><td><input type="file" name="image" value="importer"></td></tr>
      <tr><td class="active">Description : </td><td><textarea name="desc"></textarea></td></tr>
      <tr><td class="active">Nombre de pages : </td><td><input type="text" name="nbpage"></td></tr>
      <tr><td class="active">Auteur : </td><td><select name="auteur" id="auteur"><option>11</option></select></td></tr>
    <tr><td class="active">Cat&eacute;gorie : </td><td><select name="categorie" id="categorie"><option>11</option></select></td></tr>
     
      <tr><td></td><td><input type="submit" value="envoyer"></td></tr>
     
     
     
     
      </table>
     
      </form>



    et voilà la classe livre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    class livre {
     
    protected  $titre , $id , $image , $description , $auteurs , $categories , $nbpages;
     
    public function __construct(){
    $this->titre = $titre;
    $this->id = $id;
    $this->image = $image;
    $this->description = $description;
    $this->auteurs = $auteurs;
    $this->catégories = $catégories;
     
    $this->nbpages = $nbpages;
     
     
    }
     
    function ajouterLivre() { 
     
    if(isset($_POST['titre']))      $this->titre = $_POST['titre'];
    else      $this->titre = "";
     
    if(isset($_POST['image']))     $this->image = $_POST['image'];
    else      $this->image = "";
     
    if(isset($_POST['desc']))     $this->description = $_POST['desc'];
    else      $this->description = "";
     
    if(isset($_POST['auteur']))     $this->auteur = $_POST['auteur'];
    else      $this->auteur = "";
     
    if(isset($_POST['categorie']))     $this->categories = $_POST['categorie'];
    else      $this->categories = "";
     
    if(isset($_POST['nbpage']))     $this->nbpages = $_POST['nbpage'];
    else      $this->nbpages = "";
     
     
     
    if(empty($titre) OR empty($image) OR empty($desc) OR empty($nbpage)) 
        {
     
       header("Location:erreur/erreur.php");
        } 
    	else      
     { 
     
    echo $this->titre ;
          require_once("includes/conex.php");
     
     
        $sql = "INSERT INTO `livre` VALUES('$this->titre','$this->image','$this->description','$this->auteur','$this->categories','$this->nbpages')";
     
    $id = mysql_insert_id();
     
    return $id; 
     
     
     
        mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
     
     
     
        mysql_close();  
      }  
     
    }
    la requête d'insertion "$sql" ne s’exécute pas pouvez vous me dire pourquoi ?

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    C'est à se demander si tu le fais exprès!
    Citation Envoyé par sabotage
    Ta question n'a pas de sens : un formulaire n'accède pas à une classe PHP.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form enctype="multipart/form-data" action="<?php $livre->ajouterLivre();?>" method="post">
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Je redis encore une fois : un formulaire HTML envoi des données vers le serveur, plus précisément vers une page que l'on indique dans l'action du formulaire.
    Dans cette page d'action, tu vas mettre le traitement des données reçues, et c'est la que tu pourras te servir de ta classe.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Futur Membre du Club
    Femme Profil pro
    Webmaster
    Inscrit en
    Mars 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2013
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    d'accord merci

Discussions similaires

  1. Appel d'une classe depuis un autre répertoire
    Par monsieurab dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 18/02/2013, 11h18
  2. Appel d'une classe C# depuis une page ASPX
    Par grafaa dans le forum C#
    Réponses: 4
    Dernier message: 03/07/2009, 19h52
  3. Réponses: 2
    Dernier message: 26/11/2007, 13h22
  4. Appel d'une fonction depuis sous formulaire
    Par El_Manu dans le forum VBA Access
    Réponses: 7
    Dernier message: 02/11/2007, 18h21
  5. appel d'une fonction depuis un ss formulaire
    Par petitours dans le forum VBA Access
    Réponses: 2
    Dernier message: 08/10/2007, 18h57

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