Aller au contenu

Bourinho

Hubmaster
  • Compteur de contenus

    338
  • Inscrit(e) le

  • Dernière visite

Messages postés par Bourinho

  1. Salut,

    Je peux te dire pourquoi cela ne fonctionne pas tel quel...

    Tu utilises un GROUP BY...il faut donc que tu utilises des fonctions d'aggrégation (explications ici)

    Voilà deux requêtes différentes, je pense qu'une des deux correspond à ce que tu recherches :

    _ici, un même joueur pourra apparaître plusieur fois:

    SELECT ga_membres.pseudo,ga_scores.timeStamp,ga_scores.score
    FROM ga_scores,ga_membres WHERE ga_scores.idjeu='".$_SESSION['idJeuxEnCour']."' AND ga_scores.idmembre=ga_membres.id_membre
    ORDER BY score DESC

    _là, seul le meilleur score de chaque joueur devrait apparaître:

    SELECT ga_membres.pseudo,ga_bestscores.timeStamp,ga_bestscores.score
    FROM (SELECT max(score) as score, id_membre as id_membre, min(timeStamp) as timeStamp
    FROM ga_scores WHERE ga_scores.idjeu='".$_SESSION['idJeuxEnCour']."'
    GROUP BY id_membre) as ga_bestscores,ga_membres
    WHERE ga_bestscores.idmembre=ga_membres.id_membre
    ORDER BY score DESC

    Si c'est pas tout à fait bon, ça ne doit pas en être loin!!! ;)

    A+

  2. Et si tu essaies de décomposer

    photo.id_photo=photo_com.id_photo=lienphoto.id_photo

    Ca donnerait :

    SELECT photo.nom_fichier, photo_com.id_photo .....etc.... photo_com.comment
    FROM photo, photo_com, lienphoto
    WHERE photo.id_photo=photo_com.id_photo AND photo.id_photo=lienphoto.id_photo AND photo_com.langue='fr' AND lienphoto.id_theme=41

    C'est sans garantie, mais ça ne mange pas de pain! ;)

    PS : Si tu pouvais citer le message d'erreur qui t'es donné, ça pourrait nous aider à... t'aider (c'est pas très heureux, mais je n'ai jamais dit que j'étais un poète!)

  3. Salut,

    _AT_kazhar : je pense que les 5Go de trafic concernent uniquement le site et non pas la limitation du serveur... Cette évaluation est juste là pour se donner une idée de la charge que devra accepter le serveur SuperPlan.

    C'est ce que j'ai compris...

    A+

  4. Salut,

    Le principe du forum, c'est de partager ses problèmes pour les résoudre (tu as compris cette étape visiblement...)

    Mais ce forum a aussi pour but de partager ses solutions. En effet, si jamais quelqu'un vient à avoir le même problème que toi, il sera bien heureux que cette question soit résolue... mais ça ne l'avancera pas des masses.

    Alors, s'il te plait, dis nous comment tu as résolu ton problème, il se peut que cela serve à quelqu'un d'autre un jour!

    Merci

  5. Salut,

    je crois que je viens de trouver une solution... pour un nombre d'équipe paire!

    En fait, ma méthode consiste à faire un tableau... je vais prendre l'exemple avec 8 équipes :

    Les nombres qui apparaitront dans le tableau correspondent au numéro de la journée à laquelle aura lieu le match.

    X12345678

    1X

    2XX

    3XXX

    4XXXX

    5XXXXX

    6XXXXXX

    7XXXXXXX

    8XXXXXXXX

    On remplit chaque colonne sauf la dernière comme suit (pour les colonnes de 2 à 7):

    On commence par la première ligne en y mettant comme nombre celui qui est au-dessus (c'est à dire le numéro de l'équipe qui jouera contre l'équipe numéro 1) moins 1. Ensuite, pour remplir cette colonne, on incrémente jusqu'à 7 en descendant... et on recommence à 1 pour poursuivre si nécessaire.

    Pour la dernière colonne (la colonne 8 dans notre exemple):

    On commence aussi de la même manière (c'est à dire que l'on met 8-1=7 à la première ligne) mais on poursuit par les nombres paires 2, 4, 6, ... et ensuite les nombres impaires 1, 3, 5...

    Pour notre exemple, ça donne :

    X 1 2 3 4 5 6 7 8

    1 X 1 2 3 4 5 6 7

    2 X X 3 4 5 6 7 2

    3 X X X 5 6 7 1 4

    4 X X X X 7 1 2 6

    5 X X X X X 2 3 1

    6 X X X X X X 4 3

    7 X X X X X X X 5

    8 X X X X X X X X

    Avec cette méthode, ça ne devrait pas demander 30s pour générer un championnat ;)

    En effet, pour N équipes, le tableau T est défini par :

    pour 0<i<j<N, T(i,j) = (i+j)-2 modulo (N-1)

    pour 0<i<N, T(i,N) = 2(i-1) modulo (N-1)

    tel que pour tout i et pour tout j, 0<T(i,j)<N...

    Après, si tu veux faire des matchs aller-retour, tu peux poser, pour 0<i<j<N+1 :

    T(j,i) = 2N-1-T(i,j)

    T(j,i) = N-1+T(i,j)...

    Voilà, A+

  6. Bonjour,

    Je vais m'immiscer dans ce post bien que ma situation géographique ne me permette pas de pouvoir accéder à ce type de service...

    Ayant travailler dans un répartiteur de l'opérateur historique à Paris en tant que stagiaire, je peux vous dire que pour passer en dégroupage total, il faut que France Telecom (FT) recable votre installation...

    Cela correspond à installer 3 nouvelles jarretières (paire de fils de cuivre) pour FT et au moins une par votre FAI dans une salle à laquelle FT ne peut accéder.

    En plus de cela, il faut enlever l(es) ancienne(s) connexions:

    _1 jarretière si vous n'aviez pas l'ADSL auparavant.

    _2 jarretières si vous aviez l'ADSL non dégroupée auparavant.

    Il y a bel et bien du boulot pour FT, ce qui peut expliquer le temps nécessaire à la mise en place de votre nouvelle installation. Ce délai peut être augmenté si des offres promotionnelles sont en cours (promotion -> plus de boulot pour autant d'employés...)

    Il ne s'agit là que d'une partie de l'iceberg car le dégroupage total doit aussi donner du travail à d'autres services de FT...

  7. Salut,

    Je pense que ce site peut être la cause de nombreuses crises d'épilipsie!!! Attention, si des américains arrivent sur des pages comme celle dont tu viens de donner l'url, tu risques d'avoir des avocats à tes trousses!!! ;)

    Sérieusement, t'as pensé à présenter cette page au Guiness Book dans la catégorie "page web qui rapporte le plus par affichage"?

  8. Salut,

    Il me semble que la fonction "include" du langage php coresspond exactement à ce que tu recherches... Je te conseille de te renseigner là dessus...

    Ainsi, tu n'auras qu'à avoir une page news.php où tu intègres le texte que tu souhaites voir sur tes différentes pages... Ensuite, il suffit d'écrire un

    include("news.php");

    dans chacune des pages considérées...

    A+

  9. Salut... c'est curieux comme résultat...

    Qu'est ce que tu écris dans la suite de ton code pour obtenir l'affichage des résultats?

    Sinon, la requête me semblera plus correcte avec :

    $sql = 'SELECT * 
    FROM table
    WHERE nom = \''.$motsclef.'\'
    OR description REGEXP \''.$motsclef.'[^a-zA-Z]+\'
    GROUP BY description';

    Si dans PhpMyAdmin, tu fais la requête suivante, qu'obtiens tu?

    SELECT * 
    FROM table WHERE nom = 'rome' OR description REGEXP 'rome[^a-zA-Z]+'
    GROUP BY description

  10. Merci pour le lien, ça va certainement m'aider...

    Le truc qu'est rigolo, c'est que je peux importer ma "petite" base lorsque j'enlève le 'DEFAULT' devant CHARSET... C'est vraiment bizarre!!!

    Je vais étudier ton lien plus profondément pour m'en sortir plus proprement!

    Merci encore!

  11. Salut,

    Je pense qu'on est sur une piste...

    Voilà ce que me retourne phpMyAdmin :

    requête SQL:

    CREATE TABLE `departements` (

    `Numero` int( 2 ) NOT NULL default '0',

    `Nom` varchar( 30 ) NOT NULL default '',

    PRIMARY KEY ( `Numero` )

    ) ENGINE = MYISAM DEFAULT CHARSET = utf8 PACK_KEYS =0;

    MySQL a répondu:Documentation

    #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'DEFAULT CHARSET=utf8 PACK_KEYS=0' at line 5

    avec le fichier suivant :

    -- phpMyAdmin SQL Dump

    -- version 2.6.1

    -- http://www.phpmyadmin.net

    --

    -- Serveur: localhost

    -- Généré le : Jeudi 19 Octobre 2006 à 00:46

    -- Version du serveur: 4.1.9

    -- Version de PHP: 4.3.10

    --

    -- Base de données: `prv`

    --

    -- --------------------------------------------------------

    --

    -- Structure de la table `departements`

    --

    DROP TABLE IF EXISTS `departements`;

    CREATE TABLE `departements` (

    `Numero` int(2) NOT NULL default '0',

    `Nom` varchar(30) NOT NULL default '',

    PRIMARY KEY (`Numero`)

    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 PACK_KEYS=0;

    --

    -- Contenu de la table `departements`

    --

    INSERT INTO `departements` VALUES (1, 'AIN');

    INSERT INTO `departements` VALUES (2, 'AISNE');

    INSERT INTO `departements` VALUES (3, 'ALLIER');

    C'est peut être un soucis de compatibilité entre mon PhpMyAdmin (v. 2.6.1) et celui d'OVH (v. 2.8.2.4)...non?

  12. Salut,

    Quand j'enlève le '>' à la fin, je passe de

    Votre base est en cours de restauration......

    2

    C'est fini. Votre base est en place sur cet hébergement.

    à

    Votre base est en cours de restauration......

    1

    C'est fini. Votre base est en place sur cet hébergement.

    Il n'y a que le $err qui passe de 2 à 1...

  13. Merci à tous pour votre aide... (Ca va tellement vite que j'ai du mal à suivre ;) )

    vec le fichier php suivant :

    <?php
    $fichiersql='prendrer007.sql';
    $host='sql';
    $user='prendrer007';
    $password='***';
    $labaseOVH='prendrer007';
    echo "Votre base est en cours de restauration......<br>";
    die('mysql --host='.$host.' --user='.$user.' --password='.$password.' '.$labaseOVH.' < ./'.$fichiersql.' >');
    echo "<br>".$err;
    echo "<br>C'est fini. Votre base est en place sur cet hébergement.";
    ?>

    J'obtiens :

    Votre base est en cours de restauration......

    mysql --host=sql --user=prendrer007 --password=*** prendrer007 < ./prendrer007.sql >

    Voilà...

  14. Je redonne le fichier que j'utilise pour faire ce test :

    -- phpMyAdmin SQL Dump

    -- version 2.6.1

    -- http://www.phpmyadmin.net

    --

    -- Serveur: localhost

    -- Généré le : Jeudi 19 Octobre 2006 à 00:46

    -- Version du serveur: 4.1.9

    -- Version de PHP: 4.3.10

    --

    -- Base de données: `prv`

    --

    -- --------------------------------------------------------

    --

    -- Structure de la table `departements`

    --

    DROP TABLE IF EXISTS `departements`;

    CREATE TABLE `departements` (

    `Numero` int(2) NOT NULL default '0',

    `Nom` varchar(30) NOT NULL default '',

    PRIMARY KEY (`Numero`)

    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 PACK_KEYS=0;

    --

    -- Contenu de la table `departements`

    --

    INSERT INTO `departements` VALUES (1, 'AIN');

    INSERT INTO `departements` VALUES (2, 'AISNE');

    INSERT INTO `departements` VALUES (3, 'ALLIER');

    avec "use MaBaseOVH;" au début et sans (comme c'est dit dans le tuto d'OVH...)

    et l'utilisateur que j'utilise correspond à ce qui m'a été donné par OVH... avec le password et le host fournis à la même occasion...

  15. Salut et merci Jeromnimo....d'avoir essayer ;)

    Voilà ce que cela me donne sur la page:

    Votre base est en cours de restauration......

    2

    C'est fini. Votre base est en place sur cet hébergement.

    avec le fichier php suivant :

    <?php
    $fichiersql='***.sql';
    $host='***';
    $user='***';
    $password='***';
    $labaseOVH='***';
    echo "Votre base est en cours de restauration......<br>";
    echo system('mysql --host='.$host.' --user='.$user.' --password='.$password.' '.$labaseOVH.' <./'.$fichiersql.'>',$err);
    echo "<br>".$err;
    echo "<br>C'est fini. Votre base est en place sur cet hébergement.";
    ?>

    A priori, le $err est plus élevé avec ta solution...c'est mieux?

    Mais je n'ai toujours rien sous phpMyAdmin (j'utilise celui d'ovh sur h**p://start.ovh.net/...)

    Merci pour votre aide et je pense que l'on devrait y arriver!!! Enfin, j'espère :whistling:

    [Edit]

    Voilà le fichier base.sql que j'utilise

    -- phpMyAdmin SQL Dump

    -- version 2.6.1

    -- http://www.phpmyadmin.net

    --

    -- Serveur: localhost

    -- Généré le : Jeudi 19 Octobre 2006 à 00:46

    -- Version du serveur: 4.1.9

    -- Version de PHP: 4.3.10

    --

    -- Base de données: `prv`

    --

    -- --------------------------------------------------------

    --

    -- Structure de la table `departements`

    --

    DROP TABLE IF EXISTS `departements`;

    CREATE TABLE `departements` (

    `Numero` int(2) NOT NULL default '0',

    `Nom` varchar(30) NOT NULL default '',

    PRIMARY KEY (`Numero`)

    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 PACK_KEYS=0;

    --

    -- Contenu de la table `departements`

    --

    INSERT INTO `departements` VALUES (1, 'AIN');

    INSERT INTO `departements` VALUES (2, 'AISNE');

    INSERT INTO `departements` VALUES (3, 'ALLIER');

    Et j'ai essayé en utilisant "use MaBaseOVH;" au début de ce fichier...

  16. Bonjour à tous,

    Voila le fichier php que j'ai utilisé (je le met pour être sûr de la syntaxe, ça n'était peut être pas clair...)

    <?php
    $fichiergz='***.sql';
    $host='***';
    $user='***';
    $password='***';
    $labaseOVH='***';
    echo "Votre base est en cours de restauration......<br>";
    echo system('zcat '.$fichiergz.'.gz | mysql --host='.$host.' --user='.$user.' --password='.$password.' '.$labaseOVH,$err);
    echo "<br>".$err;
    echo "<br>C'est fini. Votre base est en place sur cet hébergement.";
    ?>

    Voilà ce que j'obtiens à l'affichage de la page:

    Votre base est en cours de restauration......

    1

    C'est fini. Votre base est en place sur cet hébergement.

    Ca semble plutôt bon signe...

    Le seul problème, c'est que quand je vais sur phpMyAdmin, il n'y a rien!

    Il est où le problème? :unsure:

    Merci pour votre aide!

  17. Bonjour le Hub,

    J'ai un petit mutualisé chez OVH et je n'arrive pas à importer ma base de données sur mon hébergement... J'ai pourtant essayer de suivre les instructions fournies sur le site suivant mais cela ne fonctionne pas...

    J'ai donc écrit le petit fichier php suivant :

    <?php
    echo "Décompression du fichier.....";
    system("gunzip Labase.sql.gz");
    echo "Votre base est en cours de restauration......";
    system("cat Labase.sql | mysql --host=**host** --user=**user** --password=**pass** **LabaseOVH**");
    echo "C'est fini. Votre base est en place sur cet hébergement.";
    ?>

    je n'ai aucun message d'erreur mais je ne retrouve pas mes données sur ma base chez OVH... Je ne trouve même pas le fichier décompressé dans le répertoire en question...

    Quelqu'un aurait il une idée pour me dépétrer de ce soucis???

    Par avance, merci!

    [Edit]

    J'ai essayé avec le fichier suivant :

    <?php
    echo "Décompression du fichier.....";
    system("gunzip Labase.sql.gz",$err1);
    echo $err1;
    echo "Votre base est en cours de restauration......";
    system("cat Labase2.sql | mysql --host=**host** --user=**user** --password=**pass** **LabaseOVH**", $err2);
    echo $err2;
    echo "C'est fini. Votre base est en place sur cet hébergement.";
    ?>

    où Labase2.sql est le fichier Labase.sql.gz déjà dézippé...

    J'ai $err1=0 et $err2=1... :unsure:

  18. Salut,

    Merci pour ton aide mais ta proposition ne respecte pas le cahier des charges ;) (ce qui m'embête, c'est que j'aimerais réutiliser certains des fichiers php sur une autre page...alors j'ai pas trop envie de les mixer!!!)

    En fait, j'aimerais une ligne qui permettrait de faire : Attendre que NewXhrOk change de valeur... Comme suit:(les nouvelles lignes sont suivies de //###

    function PseudoValide()
    {
    Pseudo=document.getElementById('pseudo').value;
    getXhr();
    NewXhrOk=false;//###
    // On défini ce qu'on va faire quand on aura la réponse
    xhr.onreadystatechange = function()
    {
    // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
    if(xhr.readyState == 4 && xhr.status == 200)
    {
    // On se sert de innerHTML pour rajouter les options a la liste
    document.getElementById('ImagePseudoValide').innerHTML = xhr.responseText;
    NewXhrOk=true;//###
    }
    }
    // Ici on va voir comment faire du post
    xhr.open("POST","ajax/PseudoValide.php",true);
    // ne pas oublier ça pour le post
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    // ne pas oublier de poster les arguments
    xhr.send("Pseudo="+escape(Pseudo));
    Attendre que NewXhrOk change de valeur;//###
    }

    J'ai essayé avec un do while mais ça ne fonctionne pas...ça mouline et FireFox donne un message d'erreur...

    Par avance, merci!

×
×
  • Créer...