Aller au contenu

SStephane

Hubmaster
  • Compteur de contenus

    726
  • Inscrit(e) le

  • Dernière visite

Messages postés par SStephane

  1. J'ai peut-être, sur prototype il surcharge le type mime, essaie comme ça apres la création de ton objet :

    xhr = createXhrObject();

    if (xhr.overrideMimeType)
    {
    xhr.overrideMimeType("text/xml");
    }

    ça fonctionne ?

  2. J'utilise un framework pour faire de l'ajax habituellement, mais le sujet m'intéresse, j'ai pas trop le temps de regarder, mais voila une piste :

    Un bon truc pour parcourir les attributs en JS :

    <script type="text/javascript">

    for(var a in window)
    {
    document.write(a+" => "+window[a]+"<br>");
    }
    </script>

    Je constate que XMLHttpRequest est utilisé avec chrome, du coup je trace :

    document.write(window.XMLHttpRequest == null);

    J'obtiens false, qu'obtiens tu sur ta page avec cette ligne ? (tu passes dans ta méthode compteur() ?)

  3. Le champs date, même en hidden, c'est pas vraiment une bonne idée, surtout s'il intervient sur ton nom de fichier.

    (c'est pas parce que ton formulaire est en POST qu'il est plus sécurisé qu'en GET)

    fais un truc du genre :

    if(is_uploaded_file($tmp))
    {
    //ici quelques vérifications de sécurité

    rename($tmp,$target.strftime("%Y-%m-%d").$_FILES['fichier']['name']);
    }

    strftime("%Y-%m-%d") pour insérer une date de type YYYY-MM-DD

    Si tu souhaites mettre une date, met la plutôt au début du nom de fichier, et de cette forme, tes fichiers seront ainsi facilement "triables" et identifiables par un être humain dans un dossier. (Après c'est toi qui voit :) )

    Stéphane

  4. En regardant rapidement la doc php, j'ai vu une méthode http://fr.php.net/manual/fr/function.uasort.php qui permet de passer un délégué pour trier ton tableau de la manière dont tu souhaites.

    Définis juste une fonction qui compare machin_2 et machin_11 selon ton ordre (en enlevant "amchin_" à la chaine et en comparant les entiers par exemple)

    Je ne sais pas en PHP, mais dans d'autres langages c'est la manière préconisée dans le cadre de bonnes pratiques de tri de tableau. Pas besoin de t'embêter à implémenter un tri à bulles foireux :P

    Stéphane.

  5. Normal tu dois faire

    Select enchere, motclé as kw
    from table where enchere IN ( Select enchere from table where day=14313 and motcle=kw) and motcle IN (Select motcle from table where day=14313)

  6. Selon ta version de Mysql, tu peux faire des requêtes imbriquées :

    SELECT DATEDIFF(
    (SELECT `date` FROM table where ID='1'),
    (SELECT `date` FROM table where ID='2'))
    as resultat
    from contenu group by resultat

    C'est pour te donner une idée, modifie les 2 requêtes imbriquées en sélectionnant selon tes critères, date, mot clé ou autre et ça fonctionnera

    .

    C'est comme ça que j'aurai fait, peut être y-a t-il une manière plus rapide, attends peut être la réponse d'un véritable spécialiste de SGBD.

  7. ces histoires ont déjà fait couler beaucoup d'encre

    ça fait rêver :)

    Je me servais comme beaucoup de Webxact (dont je déplore la disparition depuis son rachat), qui signalait l'absence de ces attributs comme des erreurs simple-A. L'explication qu'il donnait m'avait semblé pertinente, j'ai conservé cette pratique de ce fait, mais je suis entièrement d'accord sur le fait que les deux sont parfaitement acceptables (pas vraiment du style à avoir une opinion la dessus ;) )

  8. The height and width attributes give user agents an idea of the size of an image or object so that they may reserve space for it and continue rendering the document while waiting for the image data.

    On en déduit ce qu'on veut, c'est inutile d'être aussi agressif, le "il me semble" exprime des réserves de ma part ... querelle byzantine ... pour ne pas évoquer certains insectes volants.

  9. Note que je ne suis pas spécialiste du référencement, ce qui semble t'intéresser particulièrement, mais d'après ce que je lis j'aurais fait simplement un truc de ce genre pour signifier une redirection permanente :

    RewriteRule ancien/(.*) actualites/$1 [R=301,L]

    Pour tes images, si c'est google images qui t'intéresse, j'aurais d'instinct fait pareil mais attends le retour de quelqu'un qui a de l'expérience à ce niveau ;)

    Sinon pour le duplicate content, j'ai lu un article en suivant le site d'un des administrateurs de webmaster-hub : http://www.annuaire-info.com/referencement...-rel-canonical/ ce qui peut être intéressant dans ton cas si il te reste les 2 répertoires :)

  10. Tu as donc bien assigné la variable MOTSCLES , mais ce que tu y as mis est vide, ton problème ne vient donc pas de smarty, mais de ton $motcles.

  11. Je te conseille vivement de faire un insert, puis un update pour faire ton Insert.

    Ton premier Insert insérant juste une entrée, et tu place les données dedans avec un fonction update +/- universelle, j'en ai une grossière qui ressemble à ça, en paramètre le nom de la table, en second paramètre le tableau associatif colonnes / valeurs, qui suppose tout de même qu'il y ait une colonne "ID", mais ça adapte le à ta sauce en ajoutant des paramètres si le principe te plait pas.

    Tu peux taper dans les classes du framework Zend, ma classe Mysql s'en est largement inspiré à défaut de l'étendre (une mine pour la conception d'une manière générale).

    http://framework.zend.com/manual/fr/zend.d...g.insert-update

    	public function updateById($table,$assoc){
    $query = "UPDATE `".strtolower($table)."` SET ";
    $i = 0;
    foreach($assoc as $key => $value){
    $value = mysql_real_escape_string($value);
    $key = mysql_real_escape_string($key);
    $i++;
    if($key!="ID" && $key!="theAction")
    $query .= "`".$key."`='".$value."'";
    if($i!= sizeof($assoc) && $key!="ID" && $key!="theAction")
    $query .= ",";
    }
    $query .= " WHERE `ID`='".mysql_real_escape_string($assoc["ID"])."'";
    return mysql_query($query);
    }

    Le fait de faire insert/update t'évite surtout de multiplier les fonctions d'insertion, et d'avoir quelques méthodes updates plus globales.

  12. PLusieurs champs peuvent être unique (même dans MySQL), si tu estimes dans tes commentaires que le couple "identifiant", "message" doit être unique, tu peux le déclarer :

    ALTER TABLE nom_table ADD UNIQUE (identifiant,message)

    Pareil pour les annonces et tout le reste. Alors après il y auras toujours certains trucs perfectibles je te l'accorde, mais on peut tout de même considérablement assainir n'importe quelle base de cette manière.

    Ce que je tiens surtout à souligner, c'est que les webmasters cherchent trop souvent à ajouter du code alors que la réponse est régulièrement simple dans leur SGBD, et à mon avis c'est le cas pour 99% des problèmes de doublons, y compris celui-ci ;)

×
×
  • Créer...