PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#51 Re : Javascript » Transformation XML & XSL => HTML » 29-04-2011 10:05:22

L'échec du try courant entraine l'essai du try suivant. Le succès retourne l'objet créé courant les précédents n'ayant pas été créés.

Je ne vois pas la différence dans le résultat (et à vrai dire pas non plus vraiment dans l'éxécution). J'avais aussi envisagé ce schéma mais je ne vois pas sa supériorité. Ne m'en voulez pas trop tongue

#52 Re : Javascript » Transformation XML & XSL => HTML » 29-04-2011 10:05:22

Bon, le but est d'utiliser le meilleur ActiveX si besoin et si possible. Je veux donc chercher à créer les objets dans l'ordre que je les ai donné. Cependant, dès que j'arrive à en créer un, les précédents n'ayant pas été créés, je veux le retourner et ne pas faire les autres try.

Je vais essayer de résumé ce qui me semble pertinent dans mon cas.

On essaie de réaliser le contenu d'un bloc try. Si cela échoue, on effectue les instructions du bloc catch associé (qui connait la raison de l'erreur).

L'utilisation de throw entraine l'arret du script. Je ne peux donc l'utiliser qu'à la fin du script puisque je veux essayer tous les cas jusqu'à réalisation.

Return met fin à la fonction en sortant le resultat courant. Il n'est atteint qu'en cas de succès de la création.

Dans ces conditions, si l'un des try se réalise, alors on sort l'objet courant créé, la création des précédents ayant échoué. Enfin, si aucun ne convient, l'instruction throw met fin au script.

Du coup, je ne vois pas pourquoi "Cette fonction en résumé va créer une instance de tous les objets qu'elle va arriver à créer". Je ne vois pas à côté de quoi je passe.

#53 Re : Javascript » Transformation XML & XSL => HTML » 29-04-2011 10:05:22

Je ne sais pas comment je dois le prendre :s (je crois plutôt négativement, mais je n'en suis pas sur).

#54 Re : Javascript » Transformation XML & XSL => HTML » 29-04-2011 10:05:22

[code javascript]
try {
    return new XMLHttpRequest();
}
catch(e) {
    alert("XMLHttpRequest not supported");
    return null;
}
[/code]

est licite ?

Et je fais ça pour tous ? Je le cascade ?

J'avais mal compris ta deuxième réponse. Je me suis attardé sur les versions. Ce que je proposais ne visait que les versions ^^
A vrai dire, je ne vois pas l'erreur concernant le try catch dans :

[code javascript]
function createXMLHttpRequest() {
   try { return new XMLHttpRequest(); } catch(e) {}
   try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
   alert("XMLHttpRequest not supported");
   return null;
}
[/code]

#55 Re : Javascript » Transformation XML & XSL => HTML » 29-04-2011 10:05:22

[code javascript]
function createXMLHttpRequest() {
    try { return new XMLHttpRequest(); } catch(e) {}
    try { return new ActiveXObject("Msxml2.XMLHTTP.6.0"); } catch (e) {}
    try { return new ActiveXObject("Msxml2.XMLHTTP.3.0"); } catch (e) {}
    try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
    try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
    throw new Error("This browser does not support XMLHttpRequest.");
    return null;
}
[/code]

??

J'ai ajouté des versions (je suppose qu'il y en a d'autres) et généralisé la méthode...mais je vois pas pourquoi ça serait mieux...
Et maintenant je me demande à qui servent les versions Msxml2.XMLHTTP, pour quoi les utiliser, et quelle version ?

Cette page indique pour 6 et 3 et pas les autres : http://blogs.msdn.com/b/xmlteam/archive … lorer.aspx

#56 Re : Javascript » Transformation XML & XSL => HTML » 29-04-2011 10:05:22

Je pense que l'erreur se situe au niveau du choix de l'ActiveX ? Je vais chercher pour voir s'il y en a d'autres...Si en revanche il faut que j'ajoute quelque chose d'autre, je ne vois pas ^^

Concernant le $.ajax, je suppose qu'il faut référence à un framework (ce qui a priori ne m'intéresse pas ^^).

#57 Re : Javascript » Transformation XML & XSL => HTML » 29-04-2011 10:05:22

Bien évidement cela a fonctionné.

J'ai cependant du mal a voir pourquoi c'est si mauvais que ça tongue

J'ai regardé ce que je pouvais trouver pour obtenir un résultat similaire :

[code javascript]
function createXMLHttpRequest() {
   try { return new XMLHttpRequest(); } catch(e) {}
   try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
   alert("XMLHttpRequest not supported");
   return null;
}
[/code]

Mais je fais la même chose (certes pas avec la même version) ?

#58 Javascript » Transformation XML & XSL => HTML » 29-04-2011 10:05:22

moijhd
Réponses : 36

Bonjour,

Suite à cette conversation,

Je vous demande votre avis sur le script suivant.

Je m'interesse en particulier en savoir plus sur XSLTProcessor().

[code javascript]
var XMLtoHTML = {
    xml : '',
    xsl : '',
    html : '',
    loadFile : function(fileName){
        // Pour tous les navigateurs
        if(window.XMLHttpRequest){
            xhttp = new XMLHttpRequest();
        }
        // Sauf IE
        else{
            xhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        // On charge le fichier XML
        xhttp.open("GET", fileName, false);
        xhttp.send("");
        return xhttp.responseXML;
    },
    loadXML : function(fileNameXML){
        this.xml = this.loadFile(fileNameXML);
    },
    loadXSL : function(fileNameXSL){
        this.xsl = this.loadFile(fileNameXSL);
    },
    transformXML : function(fileNameXML, fileNameXSL){
        // On charge les données
        this.loadXML(fileNameXML);
        this.loadXSL(fileNameXSL);
        // Pour IE
        if (window.ActiveXObject){
            this.html = this.xml.transformNode(this.xsl);
            // document.getElementById("example").innerHTML=ex;
        }
        // Pour les autres
        else{
            if(document.implementation && document.implementation.createDocument){
                xsltProcessor = new XSLTProcessor();
                xsltProcessor.importStylesheet(this.xsl);
                this.html = xsltProcessor.transformToFragment(this.xml, document);
                // document.getElementById("example").appendChild(resultDocument);
            }
            else{
                alert('Erreur');
            }
        }
    },
    refreshElement : function(fileNameXML, fileNameXSL, elementID){
        // On vide l'élément
        this.removeAllElements(elementID);
        // On transforme
        this.transformXML(fileNameXML, fileNameXSL);
        // On récupère le conteneur
        var element = document.getElementById(elementID);
        // Pour IE
        if(document.all){
            element.innerHTML = this.html;
        }
        // Pour les autres
        else{
            element.appendChild(this.html);
        }
    },
    removeAllElements : function(elementID){
        var element = document.getElementById(elementID);
        var firstChild;
        while(firstChild = element.firstChild){
            element.removeChild(firstChild);
        }
    }
};
[/code]

Merci !

#60 Re : Forum Général PHP » SQL => XML => XSLT & PHP => HTML » 19-09-2012 11:36:15

Bon et bien je pense que je vais tenter ^^ Je vais bien voir ce que cela me donne sur des choses simples !
Je vais avoir un stage avec lequel je vais devoir travailler du XML, c'est l'occasion (et aussi la raison) !

Je prendrais tout autre avis s'il y en a qui suivent !

Merci !

#61 Re : Forum Général PHP » SQL => XML => XSLT & PHP => HTML » 19-09-2012 11:36:15

Après quelques recherches :

Que pensez-vous des systèmes de template à partir de XML & XSLT ?

#62 Forum Général PHP » SQL => XML => XSLT & PHP => HTML » 19-09-2012 11:36:15

moijhd
Réponses : 16

Bonjour,

Jusqu'à présent, lorsque je voulais afficher du contenu, je faisais la requète sur ma page puis je traitais directement les résultats dans une boucle while.

Voulant jouer avec le XML, j'extrais désormais les données de ma boucle while dans un fichier XML puis muni d'un fichier XSL je génère le HTML.

Je voulais savoir si c'est un bonne méthode ? Commentaire et critique !

Merci !

PS :

Pour la gestion du XML, j'utilise DomDocument et XSLTProcessor.

Je me pose aussi une autre question (mais ce sera peut-être un autre sujet), le XSL propose de pouvoir trier les données. Jusqu'à présent je faisais des requètes très complètes de façon à obtenir exactement la sortie que je voulais, ce que je compte garder. Du coup, j'utilise le XSL pour la mise en page des données.

#63 Re : HTML, xHTML CSS » 3D » 14-03-2011 23:11:06

Que pensez-vous de la librairie java 3D par rapport à ce qui précède ?

#64 Re : HTML, xHTML CSS » 3D » 14-03-2011 23:11:06

Processing a l'air interessant (surtout l'aspecr sans plugin). En revanche, les exemples qui sont proposés n'ont pas fonctionné avec IE 8 ^^

Cependant, je souhaite manipuler des objets 3D, et pour le coup je pense que ce n'est pas très bien adapté.

La dépendance d'un plugin n'est pas forcément génante (même si on préfererait s'en passer), c'est plutôt la portabilité (plateforme, navigateur) qui est important.

#65 Re : HTML, xHTML CSS » 3D » 14-03-2011 23:11:06

Je suis tombé sur du Java aussi (quand j'ai regardé rapidement sur le net).

J'attends des avis et des remarques tongue

#66 HTML, xHTML CSS » 3D » 14-03-2011 23:11:06

moijhd
Réponses : 5

Bonjour,

J'utilise actuellement un ActiveX qui me permet d'afficher dans une page web un contenu externe 3D et de me déplacer dedans.

Je cherche une technologie ou un moyen qui pourrait me permettre d'étendre la comptabilité et la portabilité de ce système.

Quel format choisir ? Flash (et fausse 3D) ?

Le but est juste d'afficher des images (des vidéos) en 3D (et fausse 3D) et de pouvoir interagir avec elles (déplacement de la caméra, zoom).

Merci par avance pour vos pistes.

#68 Re : Forum Général PHP » Filtrage avec une clause WHERE » 20-02-2011 00:49:28

Oui ^^ Donc même question en supposant LIKE

[code sql]
SELECT
*
FROM
ma_table
WHERE
champ_1 LIKE '%'
AND
champ_2 LIKE 'valeur'
[/code]

#69 Re : Forum Général PHP » Filtrage avec une clause WHERE » 20-02-2011 00:49:28

Je viens de penser à autre chose

[code sql]
SELECT
*
FROM
ma_table
WHERE
champ_1 = '%'
AND
champ_2 = 'valeur'
[/code]

Inconvénients de l'utilisation de '%' qui rend la condition sur le champ_1 vide ?

#70 Re : Forum Général PHP » Filtrage avec une clause WHERE » 20-02-2011 00:49:28

Ok ! Je viens de tester et cela me convient !

Je vous remercie.

#71 Re : Forum Général PHP » Filtrage avec une clause WHERE » 20-02-2011 00:49:28

Je connais le nombre de conditions possibles mais elles ne sont pas forcément toutes présentes en même temps

#72 Re : Forum Général PHP » Filtrage avec une clause WHERE » 20-02-2011 00:49:28

On réduit l'écriture mais (même si je ne sais pas vraiment si c'est embetant) on garde la même structure.

Je pourrais reformuler : est-ce que je peux n'avoir qu'une seule requète avec des "conditions vides" par exemple ?

#73 Forum Général PHP » Filtrage avec une clause WHERE » 20-02-2011 00:49:28

moijhd
Réponses : 12

Bonjour,

Je fais une requête classique :

[code mysql]
SELECT
*
FROM
ma_table
[/code]

A partir d'un formulaire, je voudrais pouvoir composer une requète qui prenne en compte un ou deux paramètres (ou plus).
Je peux donc suivant le cas formuler deux autres requètes :

[code mysql]
SELECT
*
FROM
ma_table
WHERE
condition_1
[/code]

et

[code mysql]
SELECT
*
FROM
ma_table
WHERE
condition_1
AND
condition_2
[/code]

Comment faire pour ne pas avoir une succession de tests avant d'arriver à la bonne requète ?
[code php]
<?php
if(conditions_pour_1_et_2){
requete_1_2
}
elseif(conditions_pour_1){
requete_1
}
elseif(conditions_pour_2){
requete_2
}
else{
requete_0
}
[/code]
Merci.

#74 Re : Javascript » Vers le tout javascript : DOM création » 25-10-2010 19:19:03

Prototype : mon but est de voir les principes sans framework dans un premier temps.

Je n'utilise jusqu'à présent que le Ajax.Refresh de prototype.

#75 Javascript » Vers le tout javascript : DOM création » 25-10-2010 19:19:03

moijhd
Réponses : 2

Bonjour,

J'ai réalisé un site en AJAX.
Jusqu'à présent, la page PHP qui traite ma demande me retourne mon code HTML que j'intègre avec innerHTML. Plus précisément, je crée dans ma page principale un tableau (<table>) et je rafraichis un <tbody> (le thead ne changeant pas et contenant le nom des colonnes).

L'amélioration que je veux apporter est la possibilité d'obtenir d'autres données. Par exemple pas seulement les lignes (<tr><td>) de ma requète mais aussi le nombre  d'enregistrements.

C'est pourquoi, je veux maintenant retourner un objet JSON (à la place du HTML), puis le traiter en Javascript pour rafraichir mon tableau. Et je peux donc ajouter d'autres champs à mon objet JSON comme je le veux.

Ma question est de savoir jusqu'où je dois aller dans la création en passant par DOM (puisque c'est ainsi que se fait le rafraichissement).
En particulier, dans quelle mesure dois-je garder ma base en HTML dans ma page principale ? Comment définir le remplissage des cellules du tableau (comment définir un modèle de remplissage et où le définir) ?

Autrement dire, jusqu'à quand doit-ton remplacer le HTML par du DOM ? (parce que je n'en ai déjà plus beaucoup).

Sujet un peu philosophique ? Je prends tous les liens qui vous paraissent répondre !

Merci !

Pied de page des forums

Propulsé par FluxBB