Gamoover

LA VIE DU SITE - LES NEWS => Le Bistrot de l'Arcade => Discussion démarrée par: _n3o_ le Vendredi 06 Juillet 2018, 10:28:30 AM

Titre: [Résolu] [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Vendredi 06 Juillet 2018, 10:28:30 AM
Salut les copains,

si les modos pensent que c'est pas au bon endroit ou que c'est pas le site pour n'hesitez pas a supprimer ;)

Je cherche une personne qui s'y connait assez pour me filer un coup de main en PHP.

-----------------------
J'ai besoin de creer une bdd pour y stocker un nom et un score par joueur (entré manuellement via un backoffice (une simple page PHP avec formulaire))
Cette bdd creera donc pour chaque ajout 2 entrées : "le nom" et "le score"
Il faudra ensuite que je puisse recuperer ces entrées et les traiter automatiquement par rank pour les afficher sur une page PHP du meilleur au moins bon avec le classement




1Pierre5678 Points
2Paul4567 Points
3Leon3456 Points

etc

Il faudra aussi que je puisse recuperer les scores juste des 3 premiers.

Alors pour moi c'est compliqué, mais je pense que pour quelqu'un qui a l'habitude ca doit etre d'une facilité déconcertante ;)

Comme on dit : Mieux vaut un qui sait, que deux qui cherchent :D

Merci d'avance les loulous  :-*
Titre: [Recherche coup de main] PHP + BDD
Posté par: Solkan le Vendredi 06 Juillet 2018, 10:43:04 AM
Je peux te le faire facilement mais pas avant le mois d'août. Contacte-moi en PV si tu n'as pas trouvé une solution d'ici là.
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Vendredi 06 Juillet 2018, 10:58:28 AM
Merci Solkan je garde ta proposition sous le coude si jamais je trouve pas d'ici là ;)
Titre: [Recherche coup de main] PHP + BDD
Posté par: Arvester le Vendredi 06 Juillet 2018, 13:42:15 PM
C'est pas pour balancer mais les scores de tes potes sont chelou, à mon avis ils ont triché.
Titre: [Recherche coup de main] PHP + BDD
Posté par: tilowil le Vendredi 06 Juillet 2018, 14:18:12 PM
Salut,
Je suppose que ton système est PHP + MySQL ?
Si c'est le cas je vais me pencher sur ta problématique.
Pour la création du schéma de la base et de la table (a n'executer qu'une seule fois, je n'ai pas mis les if exists)

-- Creation de la base et de la table
CREATE SCHEMA Test;

CREATE TABLE `Test`.`JoueurScore` (
  `Joueur` VARCHAR(20) NULL COMMENT 'Enregistrement du joueur',
  `Score` INT NULL COMMENT 'Enregistrement du score du joueur')
COMMENT = 'Table pour enregistrer les scores des joureurs ';

La base se nommera Test et ta table JoueurScore (c'est un exemple a toi d'adapter).

Pour insérer des joueurs et leurs scores Il faut utiliser l'instruction INSERT :

insert into JoueurScore(Joueur, Score) Values ('Leon',3456);
insert into JoueurScore(Joueur, Score) Values ('Pierre',5678);
insert into JoueurScore(Joueur, Score) Values ('Jean',1456);
insert into JoueurScore(Joueur, Score) Values ('Antoine',1593);
insert into JoueurScore(Joueur, Score) Values ('Georges',1478);
insert into JoueurScore(Joueur, Score) Values ('Berthe',1234);
insert into JoueurScore(Joueur, Score) Values ('Paul',4567);


Dans le code PHP seulement 1 ligne à la validation de ton formulaire de saisie.

Pour avoir un classement general avec le rang :

select @rang := @rang + 1 as rang, Joueur,Score from JoueurScore a cross join (select @rang:=0) b ORDER BY Score DESC;


Et enfin pour avoir les 3 premiers

select @rang := @rang + 1 as rang, Joueur,Score from JoueurScore a cross join (select @rang:=0) b ORDER BY Score DESC Limit 3;


Ces 2 requêtes sont a insérer dans le code PHP pour pouvoir afficher les résultats.

Le plus compliqué est fait, le PHP ne servant qu'a faire IHM (interface Homme Machine).
Je te fait l'IHM (simple) ce Dimanche.

Au niveau SQL il y a peut être plus simple, mais elles fonctionnent bien.
Si quelqu'un veut reprendre ou poursuivre avant Dimanche , pas de soucis, sinon je te mettrais le code PHP Dimanche soir.

A+

[Edit] J'avais fait un soft en PHP + MySql pour une gestion complète de compétition de jeux de Laser.
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Vendredi 06 Juillet 2018, 15:06:39 PM
Salut Tilowil et merci pour ton aide.

Je suis en train d'essayer d'ingurgiter tout ca (sans vomir)
Depuis ce matin je me retourne le cerveau :p

Je t'envois en MP une petit descriptif du toutim que ce soit plus clair en te montrant ce que j'ai deja et ce que je cherche plus clairement.
Titre: [Recherche coup de main] PHP + BDD
Posté par: tilowil le Dimanche 08 Juillet 2018, 00:52:57 AM
Bonsoir,
Je ne fais pas rentrer dans tous les détails :
Pour faire ton formulaire de saisie (HTML Basique, a toi de le prendre plus sexy) - saisie.php:

<?php
  
// Zone PHP créée en cas de besoin
?>


<HTML>
<BODY>
   <form method="post" action="insert.php">
      Joueur&nbsp;:&nbsp;
      <input type="text" name="joueur" id="joueur" required /><br>
      Score&nbsp;:&nbsp;
      <input type="number" name="score" id="score" required /><br>
      <input type="submit" value="Envoyer" />
   </form
</BODY>
</HTML>


pour l'enregistrement dans la base test (idem) - insert.php :

<?php
  
// Récupération des valeurs du formulaire
  
$joueur $_POST['joueur'];
  
$score  $_POST['score'];
  
  
// zone PHP
  // Connexion à la base de données MySQL
  
$liendb mysql_connect('localhost''mysql_user''mysql_password') or die('Impossible de se connecter : ' mysql_error());
  
// Sélection du schéma
  
mysql_select_db('test',$liendb);
  
// Lancement de la requête d'insertion
  
$sql "insert into JoueurScore(Joueur, Score) Values ('$joueur',$score);"
  
mysql_query($sql$liendb) or die(mysql_error());
  
// Il s'agit d'une requête insert, pas de résultat attendu
  
mysql_close($liendb);
?>


<HTML>
<BODY>

<?php
  
// Affichage d'un message de réussite
  
echo "Le joueur $joueur avec le score $score vient d'être enregistré avec succès !";
  
// j'aurais pu faire un sprintf, mais cela fonctionne bien ;)
  
?>


</BODY>
</HTML>



Le classement - ClassementGen.php :

<?php
  $liendb 
mysql_connect('localhost''mysql_user''mysql_password') or die('Impossible de se connecter : ' mysql_error());
  
mysql_select_db('test',$liendb);
  
$sql 'select @rang := @rang + 1 as rang, Joueur,Score from JoueurScore a cross join (select @rang:=0) b ORDER BY Score DESC';
  
$req mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
  echo 
'<html><body lang="fr" bgcolor=black Text=white><META HTTP-EQUIV="Refresh" CONTENT="30; url=ClassementGen.php">';
  echo 
'Classement Général<br>';
  echo 
'<table border="1">';
  echo 
'<TR bgcolor=gainsboro><TH><FONT color=black>Rang</FONT></TH><TH><FONT color=black>Joueur</FONT></TH><TH><FONT color=black>Score</FONT></TH></TR>';
  
// on fait une boucle qui va faire le tour de chaque enregistrement
  
while($data mysql_fetch_assoc($req))
  {
    
// on affiche les informations de l'enregistrement en cours
    
echo '<TR><TD align="center"><FONT color=black>'.$data['rang'].'</FONT></TD><TD align="center"><FONT color=black>'.$data['Joueur'].'</FONT></TD><TD align="center"><FONT color=black>'.$data['Score'].'</FONT></TD></TR>';
  }
  
// on ferme la connexion a MySQL
  
mysql_close($liendb);
  echo 
'</table></TD>';
?>



et enfin le top 3 - top3.php

<?php
  $liendb 
mysql_connect('localhost''mysql_user''mysql_password') or die('Impossible de se connecter : ' mysql_error());
  
mysql_select_db('test',$liendb);
  
$sql 'select @rang := @rang + 1 as rang, Joueur,Score from JoueurScore a cross join (select @rang:=0) b ORDER BY Score DESC limit 3';
  
$req mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
  echo 
'<html><body lang="fr" bgcolor=black Text=white><META HTTP-EQUIV="Refresh" CONTENT="30; url=top3.php">';
  echo 
'Classement Général<br>';
  echo 
'<table border="1">';
  echo 
'<TR bgcolor=gainsboro><TH><FONT color=black>Rang</FONT></TH><TH><FONT color=black>Joueur</FONT></TH><TH><FONT color=black>Score</FONT></TH></TR>';
  
// on fait une boucle qui va faire le tour de chaque enregistrement
  
while($data mysql_fetch_assoc($req))
  {
    
// on affiche les informations de l'enregistrement en cours
    
echo '<TR><TD align="center"><FONT color=black>'.$data['rang'].'</FONT></TD><TD align="center"><FONT color=black>'.$data['Joueur'].'</FONT></TD><TD align="center"><FONT color=black>'.$data['Score'].'</FONT></TD></TR>';
  }
  
// on ferme la connexion a MySQL
  
mysql_close($liendb);
  echo 
'</table></TD>';
?>



La différence entre le top3 et le classement général est le "limit 3" en fin de requête SQL.

C'est perfectible, mais avec ca tu as quelque chose de fonctionnel.

Dans la connexion à MySQL, tu remplaces :
- localhost par l'adresse de ton serveur MySQL, sauf s'il est sur la même machine
- mysql_user par le user que tu utilises pour te connecté à MySQL
- mysql_password par ton password de connexion à MySQL

Pour la connexion à ton Schéma, tu remplaces test par ton schéma

Pour les requêtes sur ta table tu remplaces JoueurScore par ta table
et les champs joueur et score par les tiens. Penses à les modifier dans les lectures PHP $data['champ']
Le champ ID, n'intervient pas dans la requête INSERT, ni dans les requêtes SELECT.
Je ne pense pas avoir oublier quelque chose.

A toi de jouer maintenant, pour ma part je me suis bien amuser à te faire ça, merci.

A+
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Lundi 09 Juillet 2018, 10:10:18 AM
Merci Tilowil, j'ai plus qu'a faire ma popote ^^ :-*

Par contre quand je test le formulaire il me donne une erreur 500 :( (j'avais deja ca avant quand je tentais de me connecter a ma bdd, je suis en local sous MAMP pour le moment donc logiquement localhost, root, root (le port est le 8889) mais ca veut pas.

ma bdd a ete cree via ton script posté precedemment (je suis parti là dessus pour etre certain que ca marche dans un premier temps)

une idee du pourquoi du comment ?
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Lundi 09 Juillet 2018, 10:17:15 AM
Mais au final je me demande si c'est pas plus facile d'avoir un fichier .xml.
En plus d'un point de vue securité c'est peut etre mieux qu'un formulaire (cela dit j'ai mis un acces via mot de passe au formulaire donc a moins de passer par un autre formulaire (xss ?) ca limite les risques (puis faudra le login et pass de la bdd)
Titre: [Recherche coup de main] PHP + BDD
Posté par: Solkan le Lundi 09 Juillet 2018, 10:17:47 AM
Tu as probablement une erreur php.

Pour débugger, il faut modifier ton php.ini
error_reporting = E_ALL
display_errors = On

Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Lundi 09 Juillet 2018, 10:59:21 AM
oui je l'ai fait il me donne une erreur sur cette ligne du insert.php

  mysql_query($sql, $liendb) or die(mysql_error());


ce qui peut (doit?) renvoyer a la ligne 8

  $liendb = mysql_connect('localhost', 'root', 'root') or die('Impossible de se connecter : ' . mysql_error());


Il faudrait peut etre specifier le port pour acceder a la bdd non ?
Titre: [Recherche coup de main] PHP + BDD
Posté par: Solkan le Lundi 09 Juillet 2018, 11:03:45 AM
mysql_query a été supprimé en php 7 (remplacé par mysqli_query). Si tu tournes avec un WAMP récent, c'est ce qui doit coincer.

sinon, donne aussi le message d'erreur car ca peut aussi être une erreur dans la requete SQL
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Lundi 09 Juillet 2018, 11:10:49 AM
Je tourne sous php 7.1

j'ai testé mysqli et il me sort ca :

[09-Jul-2018 09:08:26 UTC] PHP Parse error:  syntax error, unexpected 'mysqli_query' (T_STRING) in /Applications/MAMP/htdocs/SITE/insert.php on line 13
Titre: [Recherche coup de main] PHP + BDD
Posté par: Solkan le Lundi 09 Juillet 2018, 11:14:56 AM
les arguments de mysqli_query sont inversés par rapport à mysql_query
il faut de plus se connecter avec mysqli_connect

$con=mysqli_connect("localhost","my_user","my_password","my_db");
mysqli_query($con,"SELECT * FROM Persons");
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Lundi 09 Juillet 2018, 11:30:33 AM
Bon bah ca y est je suis complètement perdu, je vais me pendre et je reviens  :'(
Titre: [Recherche coup de main] PHP + BDD
Posté par: Solkan le Lundi 09 Juillet 2018, 11:49:42 AM
Citation de: _n3o_ le Lundi 09 Juillet 2018, 11:10:49 AM


[09-Jul-2018 09:08:26 UTC] PHP Parse error:  syntax error, unexpected 'mysqli_query' (T_STRING) in /Applications/MAMP/htdocs/SITE/insert.php on line 13
Ceci dit, cette erreur fait plutôt penser à un problème de syntaxe comme un manque de ";" en fin de ligne.

Donne le code de la page php que tu utilises et qui fait cette erreur.
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Lundi 09 Juillet 2018, 15:27:34 PM
J'ai copié collé le code donné par Tilowil plus haut.
Titre: [Recherche coup de main] PHP + BDD
Posté par: Solkan le Lundi 09 Juillet 2018, 15:33:05 PM
C'est donc probablement dans l'insert.php a la ligne 12 qui a effectivement une typo.
code avec une petite faute :
$sql = "insert into JoueurScore(Joueur, Score) Values ('$joueur',$score);"
a remplacer par :
$sql = "insert into JoueurScore(Joueur, Score) Values ('$joueur',$score)";
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Lundi 09 Juillet 2018, 16:54:34 PM
Effectivement.

Aprés changement j'ai une autre erreur mais ca avance (peut etre que là effectivement ca viens du mysql/mysqli

[09-Jul-2018 16:52:55 Europe/Berlin] PHP Fatal error:  Uncaught Error: Call to undefined function mysql_connect() in /Applications/MAMP/htdocs/SITE/insert.php:8
Stack trace:
#0 {main}
  thrown in /Applications/MAMP/htdocs/SITE/insert.php on line 8


la ligne 8

  $liendb = mysql_connect('localhost', 'root', 'root') or die('Impossible de se connecter : ' . mysql_error());


--- edit ---
j'ai mis des mysqli partout et maintenant j'ai plus d'erreur 500 mais dans le log php j'ai ca :

[09-Jul-2018 16:56:14 Europe/Berlin] PHP Warning:  mysqli_select_db() expects parameter 1 to be mysqli, string given in /Applications/MAMP/htdocs/THE_SHOW/insert.php on line 10
[09-Jul-2018 16:56:14 Europe/Berlin] PHP Warning:  mysqli_query() expects parameter 1 to be mysqli, string given in /Applications/MAMP/htdocs/THE_SHOW/insert.php on line 13
[09-Jul-2018 16:56:14 Europe/Berlin] PHP Warning:  mysqli_error() expects exactly 1 parameter, 0 given in /Applications/MAMP/htdocs/THE_SHOW/insert.php on line 13

(j'y suis ptetre allé un peu fort sur les mysqli ?  :D
Titre: [Recherche coup de main] PHP + BDD
Posté par: Tormak le Lundi 09 Juillet 2018, 19:44:32 PM
Remplace " $liendb = new mysqli('localhost', 'root', 'root') or die('Impossible de se connecter : ' . mysql_error());" par :

$liendb = mysqli_connect('localhost', 'root', 'root','ta base de données');
if ($liendb ->connect_errno) {
    echo "Echec lors de la connexion à MySQL : (" . $liendb ->connect_errno . ") " . $liendb ->connect_error;
}

Titre: [Recherche coup de main] PHP + BDD
Posté par: tilowil le Mardi 10 Juillet 2018, 01:48:18 AM
Bonsoir,

Je vois que d'autres ont pris le relais aussi  ^-^.
Désolé pour le point virgule mal placé :-\.

Je t'aurais donné un code avec mysqli, si j'avais su que tu etais en PHP7. désolé.

A+
Titre: [Recherche coup de main] PHP + BDD
Posté par: Solkan le Mardi 10 Juillet 2018, 07:49:46 AM
Citation de: _n3o_ le Lundi 09 Juillet 2018, 16:54:34 PM
j'ai mis des mysqli partout et maintenant j'ai plus d'erreur 500 mais dans le log php j'ai ca :

[09-Jul-2018 16:56:14 Europe/Berlin] PHP Warning:  mysqli_select_db() expects parameter 1 to be mysqli, string given in /Applications/MAMP/htdocs/THE_SHOW/insert.php on line 10
[09-Jul-2018 16:56:14 Europe/Berlin] PHP Warning:  mysqli_query() expects parameter 1 to be mysqli, string given in /Applications/MAMP/htdocs/THE_SHOW/insert.php on line 13
[09-Jul-2018 16:56:14 Europe/Berlin] PHP Warning:  mysqli_error() expects exactly 1 parameter, 0 given in /Applications/MAMP/htdocs/THE_SHOW/insert.php on line 13

Ce sont des notifications, pas des erreurs. Visiblement ton script s'est éxécuté jusqu'au bout.
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Mardi 10 Juillet 2018, 10:13:02 AM
Bon toujours pas, je vais voir si l'hebergement final sera en PHP 5 ou PHP 7, qu'on se prenne pas le choux pour rien a devoir refaire l'inverse par la suite :p
Titre: [Recherche coup de main] PHP + BDD
Posté par: Solkan le Mardi 10 Juillet 2018, 10:19:18 AM
mysqli_query est utilisable depuis php 5; C'est lui le standard à utiliser.
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Mardi 10 Juillet 2018, 11:47:44 AM
ah cool
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Mardi 10 Juillet 2018, 12:20:38 PM
J'ai telechargé un convertisseur Mysql->Mysqli et CA MARCHEEEEEE ! ! ! ! ! ! !  :-)= ^-^

Me reste a voir la recuperation des données mais c'est deja une avancée enorme

MERCI LES GARS VOUS ETES AU TOP ! ! ^-^ :-)= :-* :-* :-*

Par contre pour le TOP 3 chacun des 3 top players doivent etre recuperé indépendamment :/

A l'heure actuelle j'ai ca (en appelant les données d'une autre page ca marchais mais bon ca a rien a voir là :D)

<div class="or wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1.6s"  style="float:none; display: inline-block;">
                 <img src="images/gold.svg" height="100em"></img>
                 <h3 class="pricing-title">1 er</h3>
                 </BR>
                 <div class="pricing-price timer" data-from="0" data-to="<?php echo $_POST['j1score']; ?>" data-speed="2000" data-refresh-interval="50" style="color:#F7B40A;font-size:320%"></div>
                 </BR> </BR>
                 <p class="pricing-sentence" style="font-size:200%"><?php echo $_POST['equipe1']; ?></p>
             </div>
             <div class="argent wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1.3s"  style="float:none; display: inline-block;">
             <img src="images/silver.svg" height="100em"></img>
                 <h3 class="pricing-title">2 eme</h3>
                 </BR>
                 <div class="pricing-price timer" data-from="0" data-to="<?php echo $_POST['score2']; ?>" data-speed="2000" data-refresh-interval="50" style="color:#606060; font-size:240%"></div>
            </BR> </BR>
              <p class="pricing-sentence" style="font-size:160%"><?php echo $_POST['equipe2']; ?></p>
             </div>
             <div class="bronze wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1.1s" style="float:none; display: inline-block;">
            <img src="images/bronze.svg" height="100em"></img>
                 <h3 class="pricing-title">3 eme</h3>
                 </BR>
<div class="pricing-price timer" data-from="0" data-to="<?php echo $_POST['score3']; ?>" data-speed="2000" data-refresh-interval="50" style="color:#A34902; font-size:180%"></div>
          </BR> </BR>
          <p class="pricing-sentence" style="font-size:130%"><?php echo $_POST['equipe3']; ?></p>
             </div>
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Vendredi 13 Juillet 2018, 09:48:36 AM
Help les copains, c'est la derniere ligne droite :/
Titre: [Recherche coup de main] PHP + BDD
Posté par: tilowil le Vendredi 13 Juillet 2018, 09:59:08 AM
Salut,
Je croyais que ca marchait. ;)

Tu utilises mysqli, donc tu dois toujours avoir la requête qui te sort le top 3 (celle avec le limit 3). C'est vrai qu'elle te sort le top 3 en 1 fois, mais si tu regardes le code pour l'affichage on lit chaque ligne 1 à 1 (fetch). Tu adaptes cette partie (dans le fetch) avec ton code precedent, simplissime :D.

A+

[Edit] Au pire colle ton code de la partie top 3 et ce soir je te pond un truc pour réutiliser ton ancien code, sauf si quelqu'un d'autre ne te le fait avant.

A+
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Vendredi 13 Juillet 2018, 11:06:55 AM
Vu mes faibles competances je pense qu'il est plus judicieux de te c/c mon code actuel dans lequel je veut integrer les 3 scores ;)

<div class="fh5co-pricing-style-2 row" style="width:100%;background-color:transparent;padding:0 0;">
<div style="margin:0 auto;display:inline-block;padding:0 0 0 10px; text-align:center;">

             <div class="or wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1.6s"  style="float:none; display: inline-block;">
                 <img src="images/gold.svg" height="100em"></img>
                 <h3 class="pricing-title">1 er</h3>
                 </BR>
                 <div class="pricing-price timer" data-from="0" data-to="<?php echo $_POST['j1score']; ?>" data-speed="2000" data-refresh-interval="50" style="color:#F7B40A;font-size:320%"></div>
                 </BR> </BR>
                 <p class="pricing-sentence" style="font-size:200%"><?php echo $_POST['equipe1']; ?></p>
             </div>
             <div class="argent wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1.3s"  style="float:none; display: inline-block;">
             <img src="images/silver.svg" height="100em"></img>
                 <h3 class="pricing-title">2 eme</h3>
                 </BR>
                 <div class="pricing-price timer" data-from="0" data-to="<?php echo $_POST['score2']; ?>" data-speed="2000" data-refresh-interval="50" style="color:#606060; font-size:240%"></div>
            </BR> </BR>
              <p class="pricing-sentence" style="font-size:160%"><?php echo $_POST['equipe2']; ?></p>
             </div>
             <div class="bronze wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1.1s" style="float:none; display: inline-block;">
            <img src="images/bronze.svg" height="100em"></img>
                 <h3 class="pricing-title">3 eme</h3>
                 </BR>
<div class="pricing-price timer" data-from="0" data-to="<?php echo $_POST['score3']; ?>" data-speed="2000" data-refresh-interval="50" style="color:#A34902; font-size:180%"></div>
          </BR> </BR>
          <p class="pricing-sentence" style="font-size:130%"><?php echo $_POST['equipe3']; ?></p>
             </div>
</div>


esthétiquement ca donne ca :

(https://gamoovernet.pixhotel.fr/pics_gamoovernet890px/20180713111101-_n3o_-Capture-d-Aoe-Acran-2018-07-13-a-A-11.10.22.png) (https://gamoovernet.pixhotel.fr/pics/20180713111101-_n3o_-Capture-d-Aoe-Acran-2018-07-13-a-A-11.10.22.png)
Titre: [Recherche coup de main] PHP + BDD
Posté par: tilowil le Vendredi 13 Juillet 2018, 19:28:38 PM
Salut,

Excuse ma mauvaise écriture, Je te demandais le code avec l'appel à ta base mysql, pour que je puisse y integrer le code d'affichage. Sinon tu vas devoir ré-adapter le code que je vais te faire tout à l'heure, tant qu'a faire avoir une solution finale.

A+
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Samedi 14 Juillet 2018, 10:21:41 AM
je te mp mon index, l'appel de ma base suit exactement ce que tu as mis (nom de base, nom des tables, etc)
Titre: [Recherche coup de main] PHP + BDD
Posté par: tilowil le Samedi 14 Juillet 2018, 17:41:37 PM
Salut,

En reprenant un partie de ton code envoyé en MP, voici la partie pour le top 3.
Le code est perfectible, en mutualisant certaines parties. Je n'avais qu'une petite heure devant moi.
Je n'ai pas tes données et ton css, je n'ai donc pas pu tester mais je n'ai pas du laisser trop de bugs.
J'ai repris ton code HTML pour l'affichage du top 3 en le passant en echo le HTML (ce qui ne change rien), mais simplement pour n'avoir qu'un seul bloc PHP.


<?php 
  $liendb 
= ($GLOBALS["___mysqli_ston"] = mysqli_connect('localhost',  'root',  'root')) or die('Impossible de se connecter : ' mysqli_error($GLOBALS["___mysqli_ston"])); 
  
mysqli_select_db($liendbtest); 
  
$sql 'select @rang := @rang + 1 as rang, Joueur,Score from JoueurScore a cross join (select @rang:=0) b ORDER BY Score DESC limit 3'
  
$req mysqli_query($GLOBALS["___mysqli_ston"], $sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysqli_error($GLOBALS["___mysqli_ston"])); 
  
// On affiche le top 3 
  // J'ai passé ton code html en echo pour ne pas sortir du mode php puis y entrer à nouveau.
  
echo '<div class="fh5co-pricing-style-2 row" style="width:100%;background-color:transparent;padding:0 0;">';
echo '<div style="margin:0 auto;display:inline-block;padding:0 0 0 10px; text-align:center;">';
  while(
$data mysqli_fetch_assoc($req)) 
  { 
    if (
$data['rang'] == 1)
    {
   echo '<div class="or wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1.6s"  style="float:none; display: inline-block;">';
       echo 
'<img src="images/gold.svg" height="100em"></img>';
       echo 
'<h3 class="pricing-title">1 er</h3>';
   echo '</BR>';
   echo '<div class="pricing-price timer" data-from="0" data-to="'.$data['Score'].'" data-speed="2000" data-refresh-interval="50" style="color:#F7B40A;font-size:320%"></div>';
   echo '</BR> </BR>';
   echo '<p class="pricing-sentence" style="font-size:200%">'.$data['Joueur'].'</p>';
   echo '</div>';
    }
    else if (
$data['rang'] == 2)
    {
   echo '<div class="argent wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1.3s"  style="float:none; display: inline-block;">';
   echo '<img src="images/silver.svg" height="100em"></img>';
   echo '<h3 class="pricing-title">2 eme</h3>'
   echo '</BR>';
   echo '<div class="pricing-price timer" data-from="0" data-to="'.$data['Score'].'" data-speed="2000" data-refresh-interval="50" style="color:#606060; font-size:240%"></div>';
       echo 
'</BR> </BR>';
   echo '<p class="pricing-sentence" style="font-size:160%">'.$data['Joueur'].'</p>';
   echo '</div>';
    }
    else if (
$data['rang'] == 3)
    {
   echo '<div class="bronze wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1.1s" style="float:none; display: inline-block;">';
   echo '<img src="images/bronze.svg" height="100em"></img>';
   echo '<h3 class="pricing-title">3 eme</h3>';
   echo '</BR>';
 echo '<div class="pricing-price timer" data-from="0" data-to="'.$data[Score].'" data-speed="2000" data-refresh-interval="50" style="color:#A34902; font-size:180%"></div>';
   echo '</BR> </BR>';
   echo '<p class="pricing-sentence" style="font-size:130%">'.$data['Joueur'].'</p>';
   echo '</div>';
    }
  } 
  
  
// on ferme la connexion a mysql 
  
((is_null($___mysqli_res mysqli_close($liendb))) ? false $___mysqli_res); 
  echo 
'</div>';
?>



Bon test.
Titre: [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Mardi 17 Juillet 2018, 07:31:59 AM
Ca marche a la perfection ! ! !  :-*

Cette fois c'est tout bon, merci encore les gars, faut vraiment qu'on se croise que je vous paye des bières ! !   :-)= ^-^ :-)=
Titre: [Résolu] [Recherche coup de main] PHP + BDD
Posté par: tilowil le Mardi 17 Juillet 2018, 09:29:34 AM
Salut,

Cool  ^-^. Content pour toi.

Pour ce qui est de passer à Mario World  :D, c'est compliqué de rentrer dans la console  ;D.


A+
Titre: [Résolu] [Recherche coup de main] PHP + BDD
Posté par: _n3o_ le Mercredi 18 Juillet 2018, 09:59:58 AM
Mario world c'est ou il y a des chocolatines et des poches ;)