Plusieurs question sur MySQL
Fushiida
-
Fushiida Messages postés 43 Statut Membre -
Fushiida Messages postés 43 Statut Membre -
Bonjour,
Alors voila mes différente question sur MySQL :
-J'aurai aimer savoir comment on pouvait faire pour dialoguer entre 2 deux query, je m'explique
J'ai crée un système de tableau des bannis de mon jeu.
Avec ce script j'ai réussi a faire afficher le nom du personnage + la raison de sont ban situer dans un query "account"
Mais le nombre de temps qu'il est ban ce trouve dans une autre query appeler "bloc_temp" a une certaine cellule
Certain me dirons rajoute une cas dans "account" mais non sachant que la BDD a été conçu comme t'elle je ne peut la modifier sans influencer d'autre changement .
Voici mon code actuel
Ce script marche parfaitement
Alors voila mes différente question sur MySQL :
-J'aurai aimer savoir comment on pouvait faire pour dialoguer entre 2 deux query, je m'explique
J'ai crée un système de tableau des bannis de mon jeu.
Avec ce script j'ai réussi a faire afficher le nom du personnage + la raison de sont ban situer dans un query "account"
Mais le nombre de temps qu'il est ban ce trouve dans une autre query appeler "bloc_temp" a une certaine cellule
Certain me dirons rajoute une cas dans "account" mais non sachant que la BDD a été conçu comme t'elle je ne peut la modifier sans influencer d'autre changement .
Voici mon code actuel
<?php
try
{
// On se connecte à MySQL
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=5.53.189.100;dbname=account', 'root', '123456', $pdo_options);
// On récupère tout le contenu de la table account
// on garde seullement les cellules status differente de OK
$reponse = $bdd->query('SELECT * FROM account WHERE status!=\'OK\'');
// On affiche le tableau
echo '<table border="0" >
<tr>
<th>Nom</th>
<th>Raison du ban</th>
</tr>';
// On affiche chaque entrée une à une
while ($donnees = $reponse->fetch())
{
?>
<tr>
<p>
<td border="5"><font style="color: black"><?php echo $donnees['login']; ?></font></td>
<td border="5"><font style="color: black"><?php echo $donnees['status']; ?></font></td>
</p>
</tr>
<?php
}
$reponse->closeCursor(); // Termine le traitement de la requête
}
catch(Exception $e)
{
// En cas d'erreur précédemment, on affiche un message et on arrête tout
die('Erreur : '.$e->getMessage());
}
// On ferme le tableau
echo '</table>';
?>
Ce script marche parfaitement
7 réponses
-
Attention, modifie ton post et enlève ta ligne de connexion à ta base car tu as laissé les mot de passe et login!
Je réfléchi à ton problème =) -
C'est un serveur par hamachi je ne m'en sert que en local ^^, merci bien, j'aurai aussi aimer savoir comment modifier un cellule SQL d'une page php
-
Qu'est-ce que tu appelle query ?
Mais si j'ai bien compris tu voudrais faire un tableau à 3 dimensions (nom, raison de ban, temps du ban).
Alors tu peux faire une requête:
SELECT accont.login, statue, temps FROM account,bloc_temp WHERE status!='OK' AND bloc_temp.login=account.login
Est-ce que tu peux expliquer ce que tu entends par modifier une cellule SQL d'une page php (fais un petit exemple si nécessaire) =) -
Oui c'est sa que je veut faire, tu a skype ?
Un table si c'est bien query que sa s'appel =X
Un exemple, je voudrait pouvoir bannir les joueurs directement de ma page PHP c'est a dire modifier la cellule status
(je test ton code) -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Non je n'est pas skype tout de suite mais ce soir je l'aurais. =)
Une table s'appelle table query en anglais c'est question, c'est la première fois que j'entends ca... ^^
Tu peux modifier une table en faisant une requête SQL de type UPDATE, ce qui donne par exemple:
bdd->exec("UPDATE account SET statue='bani' WHERE login='moi'");
dans cette requête tu mets la valeur statu du jour 'moi' à 'bani'.
Pour plus de précisions va sur
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/914508-ecrivez-des-donnees#ss_part_2
Si tu as d'autre question n'hésite pas =)
ps: même si tu travaille en local s'est pas super de donner des MDP et login. -
Je vais regarder un peu sur le siteduzero car j'ai pas "tout tout" compris, si tu peut m'entrer skype des que tu peut
skype: Fushiida -
Je m'excuse d'avance pour le double post
Ce que j'aimerai faire.
Je voudrai pouvoir crée un menu déroulant sur ma page php avec :
-Autre
-Bot
-Insulte
Et quand je clique sur un de c'est choix sa m'affiche c'est trois intituler dans "status"
J'ai quelque petite source
Coter php<th>Statut</th> <td><em><strong>{x[status]}</strong></em> | <if cond="$x[status]=='OK'"> <a href="index.php?p=mod_player&a=ban&id={x[id]}">Bloquer</a> <else/> <a href="index.php?p=mod_player&a=ban&id={x[id]}">Débloquer</a> </if> </td> </tr> <tr>
Coter sql
//Si le compte existe if($donnees['nb_compte']==1) { $tpl->assign('id', $id_m); $sql = mysql_query("SELECT * FROM account.account WHERE id = '$id_m' LIMIT 1"); $data = mysql_fetch_array($sql); //Si le membre est OK, on le bloque if($data['status']=='OK') { $tpl->assign('ban', 'block'); mysql_query("UPDATE account.account SET status='BLOCK' WHERE id = '$id_m'") or die (mysql_error()); } //Si le membre est BLOCK, on le débloque else { $tpl->assign('ban', 'ok'); mysql_query("UPDATE account.account SET status='OK' WHERE id = '$id_m'") or die (mysql_error()); } }
Et je ne trouve pas ou est fait la liaison du php au sql