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 :

exécution d'une fonction


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 32
    Points : 18
    Points
    18
    Par défaut exécution d'une fonction
    Bonjour tout le monde!
    J'ai un petit problème avec une fonction DOM qui crée un XML.
    En effet lorsque j'utilise mon code dans une page php, tout fonctionne impec, mais lorsque je souhaite la mettre dans une fonction, je n'arrive pas à l'appeller dans un <input type=button...> ou dans un a <a href=...> avec le onClick.
    Voici le code php:

    Code PHP : 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
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
     
    function exportXML(){
    // Création d'une instance de la classe DOMImplementation
    	$imp = new DOMImplementation;
    // Création d'une instance DOMDocumentType
    	$dtd = $imp->createDocumentType('LISTE', '', 'xml/liste.dtd');
    // Création d'une instance DOMDocument
    	$document = $imp->createDocument("", "", $dtd);
    //Création de la balise LISTE
    	$liste = $document -> createElement('LISTE');
    	$document -> appendChild($liste);
    //Requete récupérant tous les films
    	$query_film = "SELECT * 
    				FROM films
    				GROUP BY code_film;";
    	$result_film = mysql_query($query_film);
    //Enregistrement des films
    	While($donnee_film = mysql_fetch_array($result_film)){
    //Création de la balise FILM
    		$film = $document -> createElement('FILM');
    		$liste -> appendChild($film);
    //Création des attributs de FILM
    		$film -> setAttribute('code_film', utf8_encode($donnee_film[0]));
    		$film -> setAttribute('pays', utf8_encode($donnee_film[3]));
    		$film -> setAttribute('date', utf8_encode($donnee_film[4]));
    		$film -> setAttribute('duree', utf8_encode($donnee_film[5]));
    		$film -> setAttribute('couleur', utf8_encode($donnee_film[6]));
    //Création de la balise TITRE et des ses attributs
    		$titre = $document -> createElement('TITRE');
    		$film -> appendChild($titre);
    		$titre -> setAttribute('titre_original', utf8_encode($donnee_film[1]));
    		$text = $document -> createTextNode(utf8_encode($donnee_film[2]));
    		$titre -> appendChild($text);
    //Requete récupérant tous les genre d'un film
    		$query_genre="SELECT code_genre, nom_genre
    					FROM genres, classification
    					WHERE classification.ref_code_genre = genres.code_genre
    					AND ref_code_film='".$donnee_film[0]."';";
    		$result_genre=mysql_query($query_genre);
    //Enregistrement des genres
    		While($donnee_genre = mysql_fetch_array($result_genre)){
    //Création de la balise GENRE et de ses attributs
    			$genre = $document -> createElement('GENRE');
    			$film -> appendChild($genre);
    			$genre -> setAttribute('code_genre', utf8_encode($donnee_genre[0]));
    			$text = $document -> createTextNode(utf8_encode($donnee_genre[1]));
    			$genre -> appendChild($text);
    		}
    //Requete récupérant les acteurs d'un film
    		$query_acteur="SELECT code_indiv, nom, prenom, nationalite, date_naiss, date_mort
    					FROM individus, acteurs
    					WHERE acteurs.ref_code_acteur = individus.code_indiv
    					AND ref_code_film='".$donnee_film[0]."';";
    		$result_acteur=mysql_query($query_acteur);
    //Enregistrement des acteurs
    		While($donnee_acteur = mysql_fetch_array($result_acteur)){
    //Création de la balise ACTEUR et de ses attributs
    			$acteur = $document -> createElement('ACTEUR');
    			$film -> appendChild($acteur);
    			$acteur -> setAttribute('ref_code_acteur', utf8_encode($donnee_acteur[0]));
    			$acteur -> setAttribute('nom', utf8_encode($donnee_acteur[1]));
    			$acteur -> setAttribute('prenom', utf8_encode($donnee_acteur[2]));
    			$acteur -> setAttribute('nationalite', utf8_encode($donnee_acteur[3]));
    			$acteur -> setAttribute('date_naiss', utf8_encode($donnee_acteur[4]));
    			$acteur -> setAttribute('date_mort', utf8_encode($donnee_acteur[5]));
    		}
    //requete récupérant le réalisateur
    		$query_realis = "SELECT * 
    					FROM individus
    					WHERE code_indiv='".$donnee_film[7]."';";
    		$result_realis = mysql_query($query_realis);
    //Enregistrement du réalisateur
    		While($donnee_realis = mysql_fetch_array($result_realis)){
    //Création de la balise REALISATEUR
    			$realisateur = $document -> createElement('REALISATEUR');
    			$film -> appendChild($realisateur);
    			$realisateur -> setAttribute('realisateur', utf8_encode($donnee_realis[0]));
    			$realisateur -> setAttribute('nom', utf8_encode($donnee_realis[1]));
    			$realisateur -> setAttribute('prenom', utf8_encode($donnee_realis[2]));
    			$realisateur -> setAttribute('nationalite', utf8_encode($donnee_realis[3]));
    			$realisateur -> setAttribute('date_naiss', utf8_encode($donnee_realis[4]));
    			$realisateur -> setAttribute('date_mort', utf8_encode($donnee_realis[5]));
    		}
    	}
    //Sauvegarde du document XML
    	$document -> save('xml/liste.xml');
    //Vérification du XML
    	if($document -> Validate()){
    		echo "<script>alert('Le document a été validé!')</script>";
    	}else{
    		echo "<script>alert('Le document n'est pas bon!')</script>";
    	}
    }

    Si quelqu'un peut m'aider, j'aurais une grosse épine en moins dans le pied!
    Salut!

  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
    Tu ne peux evidemment pas appeller directement une fonction php a partir d'un evenement javascript.

    Tu peux envoyer par post ou get un parametre vers une page qui traite ce parametre et lance la fonction.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 32
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Tu ne peux evidemment pas appeller directement une fonction php a partir d'un evenement javascript.

    Tu peux envoyer par post ou get un parametre vers une page qui traite ce parametre et lance la fonction.
    Aïe!aïe!aïe!
    c chiant car je voulais utiliser tjrs la meme page!
    ya pas possibilité de contourner le problème?

  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
    Tu peux renvoyer vers la meme page quand meme
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 32
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Tu peux renvoyer vers la meme page quand meme
    Oki!Merci beaucoup pour tes conseils!Je pense que je vais faire comme ça!
    Bonne soirée a tout le monde!

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 28/04/2006, 16h36
  2. Stopper l'exécution d'une fonction au bout d'un certain temp
    Par Eagle959 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/03/2006, 18h16
  3. Réponses: 3
    Dernier message: 11/03/2006, 15h35
  4. Pause dans l'exécution d'une fonction
    Par FrankOVD dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 29/06/2005, 07h48
  5. Exécution d'une fonction...
    Par mickeliette dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 25/11/2004, 16h59

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