Aller au contenu

jcaron

Membre+
  • Compteur de contenus

    998
  • Inscrit(e) le

  • Dernière visite

Messages postés par jcaron

  1. Si je ne m'abuse, nslookup ne fait que des lookups DNS "réels", donc /etc/hosts & compagnie il s'en moque. Tous les autres outils qui utilisent les librairies système, devraient, eux, les prendre en compte (par exemple ping ou traceroute, etc.).

    Jacques.

  2. Commence par tester des notions de base d'algorithmie. Genre demande leur d'écrire un algo de tri. Tu vas déjà éliminer 90% des candidats (c'est malheureux).

    Au delà, tu mélanges (à tort ou à raison) des notions de développement avec des notions plus liées à un graphiste, ainsi que de la configuration de CMS (théoriquement plus basique que du développement) et de l'admin système. Tu peux tester tout ce que tu veux pour avoir une idée de ce que le candidat sait faire, mais ne t'attends pas à avoir un candidat qui sait faire tout ça (sinon envoie-les moi, je suis preneur!).

    Un point à prendre en compte, c'est le temps qu'il faut pour répondre à tout ça. Mes tests de recrutement prennent déjà >2 heures, le tien prendrait probablement la journée une fois concrétisé :-(

    Jacques.

  3. Est-ce-que tu as essayé d'appliquer la méthode qu'on t'a donné précédemment pour essayer de trouver le problème par toi-même? Je ne crois pas. Si c'était le cas, tu aurais trouvé que l'insertion n'est jamais exécutée, et c'est normal, puisque en gros, tu fais:


    si (image est jpeg)
    {
    si (image est jpeg)
    {
    convertir image
    }
    sinon
    {
    inserer en base
    }
    }

    Au passage, quand tu fais du copier-coller, pense à "ré-indenter" le code, pour qu'il soit correctement aligné par rapport à la structure (fonctions, if, etc.). Les {} qui vont ensemble doivent être au même niveau, et au même niveau que le if, else, etc. correspondant. Ca aide énormément la lecture. N'importe quel éditeur décent permet de modifier ça d'un coup sec pour un bloc entier (sous Windows, souvent en tapant "tab" ou "shift-tab" pendant que le bloc est sélectionné).

    Jacques.

  4. Ben quand ça marche pas, il n'y a qu'un seule chose à faire: débugger :-) La méthode la plus simple, c'est de rajouter des traces, par exemple un print "trace 1" et ainsi de suite, dans les différentes parties du code. Ca te permettra de savoir où tu passes, et donc de cerner l'endroit où ça ne marche pas comme tu voudrais. Ensuite tu vas pouvoir vérifier les valeurs qui sont traitées/testées et/ou les valeurs de retour de certaines fonctions.

    Ajoute aussi un print_r($_POST), et pareil pour $_FILES, ça te permet de voir ce que ton script reçoit.

    Jacques.

  5. Les navigateurs ne comprennent pas le XHTML, ils croient juste que c'est du HTML mal formé (à part FF si le serveur dit que c'est du XHTML, ce qui est rarement le cas, parce que si c'était le cas les autres navigateurs ne le comprendraient pas). Certains comme IE utilisent le doctype pour déterminer s'ils sont en mode "quirks" (sauce IE) ou "standard" (sauce W3C). Il me semble que si le doctype n'est pas sur la première ligne il doit être ignoré, et donc tu dois te retrouver en mode "quirks", et le formatage est donc différent.

    A vérifier... Pour ma part je suis en 100% HTML4.01 :-)

    Jacques.

  6. Une URL ne peut contenir que des caractères 7 bits (et encore, pas tous). Tous les autres caractères (caractères accentués et autres scripts) doivent être encodés sous forme %xx. Il reste alors le problème de l'ambiguïté de jeu de caractères utilisé. Google recommande UTF-8, pour les autres mystère et boule de gomme.

    Note que ça pose généralement des problèmes quand tu utilises ce type d'URL (ou de façon plus large dès que tu sors des caractères super standard pour une URL), puisque les outils qui transforment automatiquement une URL dans du texte en lien (par exemple les forums, mais aussi Facebook, Twitter, les clients mail, etc.) ne sont pas forcément très cohérents dans leur façon de trouver jusqu'où va une URL, et ont tendance à couper trop tôt. Ca fait plein de liens incorrects donc perdus...

    Jacques.

  7. Le problème ne vient pas de l'encodage mais bien du fait que les fontes intégrées sont très incomplètes, et contiennent effectivement é mais pas è. Le choix des caractères inclus est assez... particulier.

    La seule solution c'est de regénérer le .swf avec les fontes complètes (il y a aussi un moyen d'utiliser les fontes locales il me semble, mais ça requiert aussi de modifier le swf...).

    Jacques.

  8. Ca dépend beaucoup de:

    - la qualité de tes annonces et de tes mots-clefs (donc ton QS/CTR)

    - de la quantité de trafic que tu veux obtenir

    C'est clair que si tu pars avec des annonces et mots-clefs pourris et que tu veux absolument être en première position pour avoir le plus de trafic possible, ça va te coûter jusqu'à 1 euro le clic, peut-être plus. Si tu optimises bien et que tu n'as pas besoin d'une quantité de trafic énorme (on parle de 100 clics par jour là, c'est très peu), tu peux t'en tirer à 20-30 centimes le clic sans souci à mon avis, probablement beaucoup moins. Ça dépend des mots-clefs/produits exacts, évidemment. Tu peux aussi travailler sur les comparateurs de prix, c'est du même ordre de grandeur en termes de CPC.

    Encore une fois, ça veut dire que si tu sais ce que tu fais, ça peut être tout à fait rentable (surtout si tu vends des produits sur lesquels tu fais une marge importante). Si tu ne sais pas, tu peux engloutir des (dizaines de) milliers d'euros en pub et ne jamais rien voir venir...

    Jacques.

  9. En référencement naturel, c'est le loto. Tu ne sais pas combien de temps ça va prendre, à quel niveau tu vas arriver, et si tu vas y rester. Donc construire un business là-dessus, c'est un peu comme se dire que tu vas jouer au loto pour être sûr d'avoir une retraite.

    En PPC par contre je pense que c'est tout à fait jouable. Avec un panier moyen de 100 euros, ça représente 50 ventes en 3 mois, soit une vente tous les deux jours. Avec un site décent et une campagne PPC bien construite, tu devrais pouvoir arriver à 1% de taux de conversion. Comptons 0.5% pour avoir de la marge, il te faut donc 100 clics par jour, ce n'est pas bien difficile, mais ça va te coûter quelques dizaines d'euros par jour, donc quelques milliers d'euros sur les 3 mois en question. A toi de voir si c'est rentable pour toi ou pas (ça dépend de ta marge, de ton taux de conversion, de ton panier moyen, de ton CPC...).

    Mais évidemment ce n'est pas un secteur moins concurrentiel que le précédent, et si tu ne sais pas ce que tu fais ça peut te coûter très cher en clics sans que ce soit jamais rentable (parce que tu paies tes clics trop chers, ton CTR est mauvais, tes annonces & mots-clefs ne sont pas correctement ciblés, ton site ne donne pas confiance, tu n'as pas les produits qu'il faut, tu transformes mal, tu as plein de coûts que tu n'as pas pris en compte: frais bancaires, d'emballage, d'expédition, invendus, retours, etc.). Si tu n'as pas plusieurs (dizaines de) milliers d'euros devant toi (que tu es prêt à perdre et/ou pour assurer la trésorerie nécessaire), ce n'est pas forcément une bonne idée.

    Jacques.

  10. Si tu stockes ça dans une table d'une base de données, le plus simple c'est quand même de faire un "select 1 from table where id_sondage=$id_sondage and ip_visiteur=$ip_visiteur", ça te dira tout de suite si le visiteur en question a participé au sondage en question.

    Ceci dit, je te conseille fortement de ne pas utiliser l'IP mais plutôt une valeur que tu stockerais dans un cookie... Il peut y avoir beaucoup de gens qui partagent la même IP (et inversement la même personne peut changer d'IP).

    Jacques.

  11. Euh...

    Comme dans le premier extrait que tu avais donné, tu donnes la fin d'un truc dont on n'a pas le début. Ce serait aussi nettement plus lisible et compréhensible si c'était correctement "indenté" (ça permet de voir rapidement les {} et les if/else qui vont ensemble). Il y a plusieurs règles pour ça, mais ma favorite, la plus lisible, c'est que le if, le else, et les {} qui vont avec doivent être au même niveau, et que tu augmentes d'un niveau à l'intérieur.

    Ca donnerait donc:


    if ($nl == "oui")
    {
    mysql_query("insert into spip_nl (id, Nom, Prenom, email) values('', '".$nom."', '".$prenom."', '".$email."')");
    mail($cible, $objet, $contenu, $headers);
    echo '<p style="padding:5px 0 8px 5px;">'.$message_envoye1.'</p>'."\n";
    }
    else if ($nl != "oui")
    {
    mail($cible, $objet, $contenu, $headers);
    echo '<p style="padding:5px 0 8px 5px;">'.$message_envoye2.'</p>'."\n";
    }
    else
    {
    echo '<p style="padding:5px 0 8px 5px;">'.$message_non_envoye.'</p>'."\n\n\n";
    }
    }
    else
    {
    // une des 3 variables (ou plus) est vide ...
    echo '<p style="padding-left:5px; color:#BF0D0D">'.$message_formulaire_invalide.'</p>'."\n";
    $err_formulaire = true;
    }
    }

    Et là, le début de ton code veut dire:

    si (condition) alors (faire quelque chose) sinon si (même condition est fausse) alors (faire autre chose) sinon (faire encore autre chose)

    Tu comprends bien que le dernier cas de figure ne peut jamais arriver. C'est un peu comme si tu disais si (pile) alors (A) sinon si (face) alors (B) sinon ©...

    Et de surcroît, ça ne fait pas du tout ce que tu voudrais que ça fasse, puisque tu ne testes plus de retour de mail() pour dire si le message a été envoyé ou pas.

    Ce serait donc plutôt:


    if (mail($cible, $objet, $contenu, $headers))
    {
    if ($nl == "oui")
    {
    mysql_query("insert into spip_nl (id, Nom, Prenom, email) values('', '".$nom."', '".$prenom."', '".$email."')");
    echo '<p style="padding:5px 0 8px 5px;">'.$message_envoye1.'</p>'."\n";
    }
    else
    {
    echo '<p style="padding:5px 0 8px 5px;">'.$message_envoye2.'</p>'."\n";
    }
    }
    else
    {
    echo '<p style="padding:5px 0 8px 5px;">'.$message_non_envoye.'</p>'."\n\n\n";
    }

    Je te passe le fait qu'il faudrait que tu penses à escaper les données avant de les mettre dans une requête SQL (mysql_real_escape_string doit devenir ton ami).

    Jacques.

  12. Ton code revient à dire:

    si (condition) alors (faire ça) sinon (faire autre chose) sinon (faire autre chose encore)

    Forcément, le deuxième "sinon" ne veut pas dire grand chose.

    Jacques.

×
×
  • Créer...