Aller au contenu

Gab23

Actif
  • Compteur de contenus

    24
  • Inscrit(e) le

  • Dernière visite

Messages postés par Gab23

  1. Bonjour,

    Ne sachant pas trop où poster, j'ai décidé de vous exposer mon problème ici.

    Je suis webmaster d'un jeu en ligne qui se joue par navigateur. Ce dernier est programmé en PHP et utilise une base de données MySQL pour gérer les données. Il y a quelques semaines, j'utilisais un hébergement partagé. Plus le nombre de visiteurs quotidiens augmentait, plus on rencontrait des erreurs du type "Internal Server Error" (500). Je suspectais au début le .htaccess, mais j'ai rejeté cette hypothèse rapidement, puisque même une fois que j'avais retiré tout htaccess du site, ces erreurs continuaient d'apparaître. Par la suite, j'ai changé pour un serveur dédié, et récemment j'ai remarqué que ces erreurs réapparaîssaient de temps à autres. Je ne connais pas beaucoup le fonctionnement des serveurs, mais je suspecte aujourd'hui un trop grand nombre de processus et une surutilisation du processeur, puisque ces erreurs apparaissent de manière qui semble assez aléatoire et sur tous les sites hébergés sur mon serveur.

    Pour information, je suis sur l'offre "Business I" de www.1and1.com, le processeur est un Single Core AMD Athlon 64 3500+, 2.2 Ghz, 1 Go Ram et mon site génère plus ou moins 1000 visiteurs quotidiennement.

    Quelqu'un ici a-t-il déjà expérimenté ce type de problème? Si oui, avez vous trouvé une solution?

  2. Bonjour,

    Je possède depuis plus d'un mois un jeu en ligne qui n'apparait toujours pas dans Google. J'ai pourtant soumis manuellement mon URL au moteur de recherche et j'utilise même certains services de Google (Adsense et Analytics). Il y a quelques sites qui ont des liens en dur vers le mien, pourtant Google ne veut rien savoir. À l'inverse, Yahoo l'a ajouté à leur base de données il y a déjà longtemps.

    Est-ce que quelqu'un a déjà eu un problème de la sorte et si oui, qu'avez-vous fait pour remédier à la situation ?

    Merci d'avance,

    Gabriel Boisseau

  3. Bonjour,

    J'ai un code qui fait une requête Ajax de type POST sur une page et affiche le résultat. Le code fonctionne très bien sous Firefox, Opera, mais sous IE7, ça foire. Le message dans la boite des erreurs JS est "Erreur d'exécution inconnue", ce qui ne m'aide pas vraiment.

    function moveMap(direction)
    {
    req = false;
    // branch for native XMLHttpRequest object
    if(window.XMLHttpRequest && !(window.ActiveXObject)) {
    try {
    req = new XMLHttpRequest();
    } catch(e) {
    req = false;
    }
    // branch for IE/Windows ActiveX version
    } else if(window.ActiveXObject) {
    try {
    req = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
    try {
    req = new ActiveXObject("Microsoft.XMLHTTP");
    } catch(e) {
    req = false;
    }
    }
    }

    if(req){
    req.onreadystatechange = function()
    {
    if (req.readyState == 4) /* 4 : état "complete" */
    {
    if (req.status == 200) /* 200 : code HTTP pour OK */
    {
    // me renvoie le résultat
    }
    }
    }
    req.open("POST", "index.php", true);
    req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    req.send("move=" + direction);
    }
    }

    Apparemment, ce serait la ligne suivante qui causerait l'erreur en question :

    req.onreadystatechange = function()

    Quelqu'un peut m'éclairer ?

    Array

    De plus, l'instruction echo ne fera que t'indiquer qu'il s'agit d'un tableau (array), mais ne t'indiqueras les valeurs contenues dans ce tableau que si tu suis l'exemple de NorSeb. Par contre, tu peux quand même faire afficher la structure de ton tableau avec l'instruction print_r().

    Exemple :

    <? print_r($data); ?>

  4. J'utilise également Dreamhost (le plan "Crazy Domain Insane") depuis 1 an déjà et tout comme mowm, je suis tout à fait satisfait de leurs services. Une autre des particularités intéressantes, c'est le fait qu'après être abonné même avec leur plan le moins dispendieux, notre espace disque ainsi que notre bande passante ne cesse d'augmenter chaque semaine. Et ça ne coûte rien de plus :)

  5. c'est quoi une variable tableau ? fetch_array ?

    Pas tout à fait. Un tableau est en fait une association de valeurs avec des clés. Ces tableaux permettent de stocker plusieurs valeurs dans une seule et même variable. Chacune de ses valeurs est associée à une clé.

    Par exemple, le tableau suivant permet de sotcker un classement de couleurs.

    <?
    $tableau = array(
    1 => "rouge";
    2 => "bleu";
    3 => "jaune";
    );
    ?>

    Là, les trois valeurs rouge, bleu et jaune sont associée respectivement aux clés 1, 2 et 3. Par la suite, on peut réutiliser les valeurs comprises dans ce tableau comme ceci.

    <?
    echo $tableau[1]; // Affichera "rouge"
    echo $tableau[2]; // Affichera "bleu"
    ...
    ?>

    Comme tu peux le voir, dans un tableau, la clé associée à une valeur est inscrite entre des crochets lors de l'appel au tableau.

    Dans l'exemple de ybet, le tableau était créé par une boucle qui associe dynamiquement les valeurs aux clés dans le tableau.

    Voici donc ce qui devrait se retrouver dans ton code.

    type d'annuaire<br />
    <?php
    $i = 0; // On initialise le compteur à zéro
    $tableau = array(); // On initialise le tableau
    $req = mysql_query('select `id`, `genre` from choix');
    echo '<select name="type">';
    while($choix = mysql_fetch_array($req))
    {
    $tableau[$i] = $choix[0];
    echo '<option value="'.$choix[0].'">'.$choix[1].'</option>';
    $i++;
    }
    echo '</select>';

    ?>

  6. J'utilise un hébergeur américain (mutualisé) dont je suis entièrement satisfait : Dreamhost.com

    On commence initialement avec 20 Go d'espace disque et ça augmente de 160 Mo par semaine.

    Mieux encore, on commence avec 1 Tb de bande passante avec leur offre la moins chère :rolleyes:

    Pour les bases de données, elles sont illimitées. Même chose pour les adresses email.

    Un nom de domaine gratuit.

    Seul point dont je ne suis pas certain, c'est le Safe Mode, mais je crois qu'il est possible de l'activer et de le désactiver facilement.

    Le prix du plan que je t'ai décrit est de 9,95$ US par mois soit environ 7,85 euros.

  7. La boite en question, disparait elle lorsque le traitement est terminé ??

    En effet, elle disparait puisque l'internaute se retrouve soit sur une nouvelle page soit la page sur laquelle il se trouvait est rechargée.

    Merci Gab pour le tuyau

    Pas de problème ;)

  8. Salut

    Ça se fait en Javascript. Exemple :

    ...
    <head>

    <script language="javascript" type="text/javascript">
    function afficheMessage()
    {

    document.getElementById('boiteInfo').style.position = 'absolute';
    document.getElementById('boiteInfo').style.display = 'block';

    }
    </script>

    <style>

    #boiteInfo {
    width:200px;
    padding:4px;
    font:12px Helvetica, Arial, sans-serif;
    left:50%;
    top:50%;
    margin-top: -12px;
    margin-left: -100px;
    display:none;
    text-align:center;
    border:#d0d0d0 2px solid;
    background:#fff;
    }

    </style>

    </head>

    <body>

    <div id="boiteInfo">Veuillez patienter...</div>

    <input type="button" onclick="afficheMessage();" value="Soumettre" />

    </body>
    ...

    Ici, quand on clique sur Soumettre, une boite apparait centrée sur l'écran et affiche "Veuillez patienter...".

    Tu trouveras certainement d'autres exemples sur des sites comme editeurjavascript.com ou toutjavascript.com.

    Voilà ;)

  9. J'utilise la fonction ci-dessous pour redimensionner des images JPG.

    function resize_photo($photoWidth, $photoHeight, $photoSource, $photoDest)
    {
    // On crée une nouvelle image redimensionnée
    $photo_1_step_1 = _AT_ImageCreateTrueColor($photoWidth, $photoHeight);
    $photo_1_step_2 = _AT_ImageCreateFromJpeg($photoSource);
    $photo_1_step_3 = _AT_ImagesX($photo_1_step_2);
    $photo_1_step_4 = _AT_ImagesY($photo_1_step_2);
    $photo_1_step_5 = _AT_ImageCopyResampled($photo_1_step_1, $photo_1_step_2, 0, 0, 0, 0, $photoWidth, $photoHeight, $photo_1_step_3, $photo_1_step_4);
    $photo_1_step_6 = _AT_ImageJpeg($photo_1_step_1, $photoDest);

    // On vérifie si la photo a bien été créée
    if(is_file($photoDest)){
    return true;
    } else {
    return false;
    }
    }

    Ensuite, l'appel à la fonction.

    resize_photo(100, 75, $_FILES['nom_du_champ']['tmp_name'], 'photo.jpg');

    Note : le troisième paramètre ($photoSource) doit être le chemin d'accès temporaire à la photo. Ce chemin peut être récupéré par la variable $_FILES['nom_du_champ']['tmp_name'].

  10. Pour ceux qui voudraient savoir, j'ai testé l'idée de bloquer un internaute qui n'accepterait pas les cookies avec un script rudimentaire de spam, et jusqu'à maintenant, ça a l'air de fonctionner. Tant mieux :)

  11. Dans mon cas, la vérification de l'ip pourrait causer des problèmes : lorsque le visiteur arrive sur la page d'accueil, il a la possibilité de laisser un commentaire directement sur cette page. Or, je ne veux pas forcer les visiteurs à attendre 10 minutes chaque fois pour poster un commentaire :wacko:

    Reste à savoir si la méthode des cookies fonctionne. Je vais la tester bientôt.

  12. Tout d'abord, merci pour les réponses :)

    Je vais probablement tenter ma chance avec une liste de mots clés à bannir. On verra ce que cela va donner.

    Une dernière question. Je ne connais pas beaucoup les techniques qu'utilises les spammeurs, mais est-ce que leurs robots prennent les cookies et les sessions php ?

    Parce que si ce n'est pas le cas, il y aurait là une façon très simple de les bloquer.

    En attendant, merci encore pour votre aide rapide.

  13. Salutations :)

    Je cherche à sécuriser un script pour photoblog (codé en php) contre le spam dans les commentaires.

    Ma première idée a été de créer mon propre système Captcha. Jusque là, aucun problème, ça fonctionne très bien. Seulement, je sais que les systèmes Captcha peuvent être un peu embettant pour les visiteurs, donc je cherche une façon de bloquer les messages envoyés par des spammeurs à l'aide d'une méthode qui serait "invisible", c'est-à-dire, une méthode qui ne forcerait pas le visiteur à effectuer une manipulation spéciale. J'ai d'abord pensé à vérifier les headers du visiteur, malheureusement, je ne vois pas comment différencier un spammeur d'un visiteur normal.

    Quelqu'un a une idée pour m'aider à faire ça ?

    Merci d'avance pour votre aide :)

  14. Bonjour (ou bonsoir),

    Je me présente; je m'appelle Gabriel Boisseau, j'ai 15 ans et je suis tombé dans le monde du webmastering il y a quelques années déjà. Je me spécialise dans le PHP, mais je me débrouille bien également avec les autres langages (xhtml, css, javascript, etc.).

    Je suis co-créateur de Photostand, un système de gestion de photoblog codé en PHP.

    De plus, je suis co-fondateur de la petite société de création de sites Web Kreativ Studios qui ouvrira prochainement ses portes.

    Voilà, j'espère passer de bons moments sur le Hub :)

×
×
  • Créer...